home *** CD-ROM | disk | FTP | other *** search
/ Moving Pixels Collection / Moving Pixels Collection.iso / st / growth / source / qbits.s < prev   
Text File  |  1985-11-18  |  183KB  |  7,093 lines

  1. start:  clr.l   -(SP)           ;Go into supervisor mode
  2.         move.w  #$20,-(SP)
  3.         trap    #1
  4.         addq.l  #6,SP
  5.         move.l  D0,spv_sp
  6.     move.b    #0,$484
  7.     move.l    #$58000,$436
  8.  
  9.     move.l    #$31415926,$426
  10.     move.l    #myreset,$42a
  11.  
  12.     move.w    #4,-(sp)
  13.     trap    #14
  14.     addq.l    #2,sp
  15.     move.w    d0,ressave
  16.  
  17.     move.w    #0,-(sp)
  18.     move.l    #-1,-(sp)
  19.     move.l    #-1,-(sp)
  20.     move.w    #5,-(sp)
  21.     trap    #14
  22.     add.l    #12,sp
  23.  
  24.     bra    actual
  25. myreset:
  26.     rts
  27.  
  28. ressave:    blk.w    1,0
  29. oldvbl1:    blk.l    1,0
  30. MFP:    EQU    $FFFA00
  31. IERA:    EQU    MFP+$07
  32. IERB:    EQU    MFP+$09
  33. IPRA:    EQU    MFP+$0B
  34. ISRA:    EQU    MFP+$0F
  35. IMRA:    EQU    MFP+$13
  36. IMRB:    EQU    MFP+$15
  37. VECTOR:    EQU    MFP+$17
  38. TACR:    EQU    MFP+$19
  39. TADR:    EQU    MFP+$1F
  40. ISRVEC:    EQU    $134
  41. SCREG:    EQU    $FF8800        ;CHIP REGISTER SELECT
  42. SCDATA:    EQU    $FF8802        ;REGISTER DATA
  43.  
  44. P_TERM_OLD: EQU    0    
  45. F_SUPER:  EQU    $20
  46. GETMPB:     EQU    0
  47. BCONSTAT: EQU    1
  48. BCONIN:     EQU    2
  49. BCONOUT:     EQU    3
  50. INPUT:    EQU    $FB0001
  51. OUTPUT:    EQU    $FA0000
  52.  
  53. actual:    
  54.     BSR    SAVEMFP        ;SAVE NATURAL MFP CONDITIONS
  55.     MOVE.W    #$2700,SR
  56.     LEA    INULL,A0
  57.     BSR    SETINT        ;SET NULL INTERRUPT ADDRESS
  58.     MOVEQ    #0,D0        ;SET INITIAL FREQUENCY
  59.     BSR    SETFREQ
  60.     BSR    ENABMFP        ;SET THE MFP RUNNING
  61.     BSR    SETSND        ;SET UP SOUND REGISTERS
  62.     SF    XTERNAL        ;SET THE MODE FOR INTERNAL ATARI USE
  63.     MOVE.W    #$2000,SR    ;ENABLE THE INTERRUPTS
  64.  
  65.  
  66.         jsr     mousof
  67.         jsr     putrout
  68.         jsr     getscrn
  69.         jsr     clearsc
  70.     jsr    plotinit
  71.     
  72.         jsr     fadeout
  73.         jsr     linea
  74.         move.w  mx,d0
  75.         jsr     randomseed
  76.     lea    teleavb,a0
  77.     jsr    putvbl
  78.     move.l    a1,oldvbl1
  79.     jsr    putsp
  80.     jsr    putsp
  81. ftf:
  82.     jsr    fadeout
  83.         jsr     loadscr
  84.     move.b    #1,dopr
  85.     bsr    putnums
  86.     bsr    flip_scr
  87.     bsr    putnums
  88.     bsr    flip_scr
  89. *    jsr    titlestuff
  90.     jsr    loadsounds
  91.     move.w    #594,mmax
  92.     move.w    #0,mmin
  93.     move.w    #594,mmax2
  94.     move.w    #0,mmin2
  95.     move.w    #-1,sdead
  96.     move.w    #-1,break
  97.     move.w    #-1,remember
  98.     move.w    #-1,bigavail
  99.     move.w    #2000,emancnt
  100.     move.w    #-1,attacker
  101.     move.w    #-1,battacker
  102.     move.w    #-1,hesdead
  103.     move.w    #5,speed
  104.     move.w    #1,dopr
  105.     move.w    #0,score
  106.     move.w    #3,ships
  107.     move.w    #0,level
  108.     move.w    #0,buttondat
  109.         move.w  speed,grtimer
  110.     move.w    #50,mx
  111.         move.w  #-1,byebye
  112.         move.w  #-1,bigflg
  113.         move.w  #-1,shooting
  114.     move.l    #ship0,wship0
  115.     move.l    #ship1,wship1
  116.     move.l    #ship2,wship2
  117.     move.l    #ship3,wship3
  118.         move.l  #block1,whichblock
  119.     move.w    #5,brhits
  120.     bsr    copyintoboth
  121.         bsr     putfirst
  122.     bsr    weapons
  123.     bsr    fadein
  124.     bsr    pregrow
  125.     bra    testy
  126.  
  127.  
  128.  
  129. testy:
  130.     bsr    copyscr
  131.         bsr     smallgrow
  132.     bsr    shoot
  133.     bsr    putsp
  134.     bsr     bbani
  135.         bsr     brainy
  136.     bsr    amidead
  137.         bsr     animboom
  138.     bsr    dopanel
  139.     bsr    attack
  140.     bsr    battack
  141.     bsr    putnums
  142.         bsr     flip_scr
  143.     bsr    keyboard
  144.     move.l    #ship0,wship0
  145.     move.l    #ship1,wship1
  146.     move.l    #ship2,wship2
  147.     move.l    #ship3,wship3
  148.     cmpi.w    #10,brhits
  149.     bge    nextlev
  150.         bra     testy
  151.  
  152. nextlev:
  153.     move.w    #0,blani
  154.     move.w    #104,b1x
  155.     move.w    #91,b1y
  156.     move.w    #104,b2x
  157.     move.w    #91,b2y
  158.     move.w    #104,b3x
  159.     move.w    #91,b3y
  160.     move.w    #104,b4x
  161.     move.w    #91,b4y
  162.     move.w    #104,b5x
  163.     move.w    #91,b5y
  164.     move.w    #104,b6x
  165.     move.w    #91,b6y
  166.     move.w    #104,b7x
  167.     move.w    #91,b7y
  168.     move.w    #104,b8x
  169.     move.w    #91,b8y
  170.     bsr    blowitup
  171. skipb:
  172.     cmpi.w    #25,level
  173.     bge    youwin
  174.     addq.w    #1,level
  175.     move.l    #0,d0
  176.     move.w    level,d0
  177.     mulu    #4,d0
  178.     move.l    #blocklist,a0
  179.     move.l    (a0,d0.w),whichblock
  180.  
  181.     bsr    fadeout
  182.     move.l    #0,d0
  183.     move.w    level,d0
  184.     mulu    #2,d0
  185.     move.l    #growlist,a0
  186.     move.w    (a0,d0.w),speed
  187.     move.w    #1,dopr
  188.     bsr    copyintoboth
  189.         bsr     putfirst
  190.     bsr    copyscr
  191.     bsr    flip_scr
  192.     bsr    copyscr
  193.     bsr    weapons
  194.     move.w    #0,brhits
  195.     move.w    #1,dopr
  196.     move.w    #-1,shooting
  197.     move.w    #-1,byebye
  198.     move.w    #-1,attacker
  199.     move.w    #-1,battacker
  200.     move.w    #594,mmax
  201.     move.w    #0,mmin
  202.     move.w    #594,mmax2
  203.     move.w    #0,mmin2
  204.     move.w    #1,dopr
  205.     move.l    #0,d0
  206.     move.w    level,d0
  207.     mulu    #2,d0
  208.     move.l    #chlist,a0
  209.     move.w    (a0,d0.w),d0
  210.     cmpi.w    #1,d0
  211.     beq    prebreakout
  212.     cmpi.w    #2,d0
  213.     beq    bubblestuff
  214.     move.w    #-1,break
  215.     bsr    fadein
  216.     bsr    pregrow
  217.     bra    testy    
  218.  
  219. blocklist:
  220.     dc.l    block1,block2,block3,block3,block4,block5,block5,block6
  221.     dc.l    block7,block7,block8,block9,block9,block10,block11,block11
  222.     dc.l    block12,block13,block13,block14,block15,block15,block16
  223.     dc.l    block17,block17,block18
  224.  
  225. growlist:
  226.     dc.w    3,3,30,3,3,30,3,3,30,2,2,30,2,2,30,2,2,30,1,1,30,1,1,30
  227.     dc.w    1,1
  228.  
  229. chlist:    dc.w    0,0,1,0,0,2,0,0,1,0,0,2,0,0,1,0,0,2,0,0,1,0,0,2,0,0,1
  230. ***********************************
  231. youwin:
  232.     move.w    #1,dopr
  233.     bsr    putnums
  234.     bsr    flip_scr
  235.     bsr    putnums
  236.     bsr    printwin
  237.  
  238. ywl:
  239. *    bsr    keyboard
  240.     tst.w    buttondat
  241.     bne    ywl2
  242.     bra    ywl
  243.  
  244. ywl2:
  245.     bra    ftf
  246. printwin:
  247.     move.l    #wintext,-(sp)
  248.     move.w    #9,-(sp)
  249.     trap    #1
  250.     addq.l    #6,sp
  251.     bsr    flip_scr
  252.     move.l    #wintext,-(sp)
  253.     move.w    #9,-(sp)
  254.     trap    #1
  255.     addq.l    #6,sp
  256.     rts
  257.  
  258. wintext:
  259.     dc.b    27,'b','1',27,'c','0'
  260.     dc.b    27,'Y',32+3,32+7,'CONGRATULATIONS'
  261.     dc.b    27,'Y',32+5,32+1,'YOU HAVE KILLED THE GROWTH'
  262.     dc.b    27,'Y',32+7,32+1,'MOUSE BUTTON  FOR NEW GAME',0
  263.  
  264. even
  265. *********************************
  266. weapons:
  267.     tst.w    bigavail
  268.     bpl    isavail
  269.     move.l    hiden,a0
  270.     add.l    #25080,a0
  271.     move.w    #6,d0
  272.     move.l    #unarmed,a1
  273. wep1:    move.l    (a1)+,(a0)+
  274.     move.l    (a1)+,(a0)+
  275.     move.l    (a1)+,(a0)+
  276.     move.l    (a1)+,(a0)+
  277.     move.l    (a1)+,(a0)+
  278.     move.l    (a1)+,(a0)+
  279.     move.l    (a1)+,(a0)+
  280.     move.l    (a1)+,(a0)+
  281.     add.l    #128,a0
  282.     dbf    d0,wep1
  283.     move.l    seen,a0
  284.     add.l    #25080,a0
  285.     move.w    #6,d0
  286.     move.l    #unarmed,a1
  287. wep2:    move.l    (a1)+,(a0)+
  288.     move.l    (a1)+,(a0)+
  289.     move.l    (a1)+,(a0)+
  290.     move.l    (a1)+,(a0)+
  291.     move.l    (a1)+,(a0)+
  292.     move.l    (a1)+,(a0)+
  293.     move.l    (a1)+,(a0)+
  294.     move.l    (a1)+,(a0)+
  295.     add.l    #128,a0
  296.     dbf    d0,wep2
  297.     rts
  298.  
  299. isavail:
  300.     move.l    hiden,a0
  301.     add.l    #25080,a0
  302.     move.w    #6,d0
  303.     move.l    #armed,a1
  304. wep3:    move.l    (a1)+,(a0)+
  305.     move.l    (a1)+,(a0)+
  306.     move.l    (a1)+,(a0)+
  307.     move.l    (a1)+,(a0)+
  308.     move.l    (a1)+,(a0)+
  309.     move.l    (a1)+,(a0)+
  310.     move.l    (a1)+,(a0)+
  311.     move.l    (a1)+,(a0)+
  312.     add.l    #128,a0
  313.     dbf    d0,wep3
  314.     move.l    seen,a0
  315.     add.l    #25080,a0
  316.     move.w    #6,d0
  317.     move.l    #armed,a1
  318. wep4:    move.l    (a1)+,(a0)+
  319.     move.l    (a1)+,(a0)+
  320.     move.l    (a1)+,(a0)+
  321.     move.l    (a1)+,(a0)+
  322.     move.l    (a1)+,(a0)+
  323.     move.l    (a1)+,(a0)+
  324.     move.l    (a1)+,(a0)+
  325.     move.l    (a1)+,(a0)+
  326.     add.l    #128,a0
  327.     dbf    d0,wep4
  328.     rts
  329.  
  330.  
  331. *****************************************************************
  332. teleavb:
  333.     tst.w    teled
  334.     bpl    telesame
  335.     move.l    #0,d0
  336.     move.w    tacount,d0
  337.     mulu    #4,d0
  338.     lea    telelist,a0
  339.     move.l    (a0,d0.w),a0
  340.     move.l    #19800,d0
  341.     bsr    puttels
  342.     move.w    #3,teled
  343.     addq.w    #1,tacount
  344.     cmpi.w    #6,tacount
  345.     blt    teleax
  346.     move.w    #0,tacount
  347. teleax:
  348.     bra    tel2
  349.  
  350. telesame:
  351.     move.l    #0,d0
  352.     move.w    tacount,d0
  353.     mulu    #4,d0
  354.     lea    telelist,a0
  355.     move.l    (a0,d0.w),a0
  356.     move.l    #19800,d0
  357.     bsr    puttels
  358.     subq.w    #1,teled
  359.     bra    tel2
  360.  
  361.  
  362. puttels:
  363.     move.l    seen,a1
  364.     add.l    d0,a1
  365.     move.w    #21,d0
  366. pts1:    move.l    (a0)+,(a1)+
  367.     move.l    (a0)+,(a1)+
  368.     move.l    (a0)+,(a1)+
  369.     move.l    (a0)+,(a1)+
  370.     add.l    #144,a1
  371.     dbf    d0,pts1
  372.     rts
  373.  
  374.  
  375.  
  376. tel2:    tst.w    teled2
  377.     bpl    telesame2
  378.     move.l    #0,d0
  379.     move.w    tacount2,d0
  380.     mulu    #4,d0
  381.     lea    telelist2,a0
  382.     move.l    (a0,d0.w),a0
  383.     move.l    #19816,d0
  384.     bsr    puttels
  385.     move.w    #4,teled2
  386.     addq.w    #1,tacount2
  387.     cmpi.w    #5,tacount2
  388.     blt    teleax2
  389.     move.w    #0,tacount2
  390. teleax2:
  391.     rts
  392.  
  393. telesame2:
  394.     move.l    #0,d0
  395.     move.w    tacount2,d0
  396.     mulu    #4,d0
  397.     lea    telelist2,a0
  398.     move.l    (a0,d0.w),a0
  399.     move.l    #19816,d0
  400.     bsr    puttels
  401.     subq.w    #1,teled2
  402.     rts
  403.  
  404.  
  405.  
  406. telelist:
  407.     dc.l    telea1,telea2,telea3,telea4,telea5,telea6
  408. tacount:    blk.w    1,0
  409. teled:    blk.w    1,0
  410.  
  411. telelist2:
  412.     dc.l    teleb1,teleb2,teleb3,teleb4,teleb5
  413. tacount2:    blk.w    1,0
  414. teled2:    blk.w    1,0
  415.  
  416.  
  417. *****************************************************************
  418. titlestuff:
  419.     move.w    #-1,-(sp)
  420.     move.l    screen4,-(sp)
  421.     move.l    screen4,-(sp)
  422.     move.w    #5,-(sp)
  423.     trap    #14
  424.     add.l    #12,sp
  425.  
  426.     move.w    #$2700,sr
  427.     moveq    #2,d0
  428.     bsr    setfreq
  429.     move.w    #$2000,sr
  430.     jsr    loadmusic
  431.     bsr    fadein
  432. *    bsr    stm
  433. twait:
  434.     tst.b    inuse
  435.     beq    stm
  436.     tst.w    buttondat
  437.     beq    twait
  438.     MOVE.W    #$2700,SR
  439.     LEA    INULL,A0    ;REMOVE REPLAY INT.
  440.     BSR    SETINT
  441.     SF    INUSE
  442.     moveq    #0,d0
  443.     bsr    setfreq
  444.     MOVE.W    #$2000,SR
  445.     bsr    fadeout
  446.     rts
  447.  
  448. stm:    move.l    #sounds,currentsad
  449.     move.l    #sounds+50081,bottom
  450.     move.b    #1,inuse
  451.     lea    ireplay,a0
  452.     bsr    setint
  453.     bra    twait
  454.     rts
  455.  
  456. *****************************************
  457. *    sound subroutines        *
  458. *****************************************
  459. bigshot:    
  460.     move.l    shoot1s,currentsad
  461.     move.l    shoot1b,bottom
  462.     st    inuse
  463.     lea    ireplay,a0
  464.     bsr    setint
  465.     rts
  466.  
  467. litshot:    
  468.     move.l    shoot0s,currentsad
  469.     move.l    shoot0b,bottom
  470.     st    inuse
  471.     lea    ireplay,a0
  472.     bsr    setint
  473.     rts
  474.  
  475. laugh:    
  476.     move.l    laughs,currentsad
  477.     move.l    laughb,bottom
  478.     st    inuse
  479.     lea    ireplay,a0
  480.     bsr    setint
  481.     rts
  482.  
  483. pay:    
  484.     move.l    pays,currentsad
  485.     move.l    payb,bottom
  486.     st    inuse
  487.     lea    ireplay,a0
  488.     bsr    setint
  489.     rts
  490.  
  491. appear:    
  492.     move.l    appears,currentsad
  493.     move.l    appearb,bottom
  494.     st    inuse
  495.     lea    ireplay,a0
  496.     bsr    setint
  497.     rts
  498.  
  499. reward:    
  500.     move.l    rewards,currentsad
  501.     move.l    rewardb,bottom
  502.     st    inuse
  503.     lea    ireplay,a0
  504.     bsr    setint
  505.     rts
  506.  
  507. boom:    
  508.     move.l    booms,currentsad
  509.     move.l    boomb,bottom
  510.     st    inuse
  511.     lea    ireplay,a0
  512.     bsr    setint
  513.     rts
  514.  
  515. bigboomsound:    
  516.     move.l    bigbooms,currentsad
  517.     move.l    bigboomb,bottom
  518.     st    inuse
  519.     lea    ireplay,a0
  520.     bsr    setint
  521.     rts
  522.  
  523.  
  524.  
  525. ****************************************
  526. *     THE NULL INTERRUPT ROUTINE       *
  527. ****************************************
  528.  
  529. INULL:    RTE
  530.  
  531.  
  532.  
  533. ****************************************
  534. *       REPLAY FROM MEMORY             *
  535. ****************************************
  536.  
  537. IREPLAY:
  538.     movem.l    d0-d7/a0-a6,-(sp)
  539.     MOVEQ    #0,D7
  540.     move.l    currentsad,a6
  541.     MOVE.B    (A6)+,D7    ;READ FROM RAM
  542.     CMP.L    bottom,A6        ;EXCEDED END STOP
  543.     BGT.S    HALTREP        ;BRANCH IF SO
  544.     move.l    a6,currentsad
  545.     JMP    INTOUTP        ;ELSE OUTPUT IT
  546.  
  547. HALTREP:
  548.     MOVE.W    #$2700,SR
  549.     LEA    INULL,A0    ;REMOVE REPLAY INT.
  550.     BSR    SETINT
  551.     SF    INUSE
  552.     MOVE.W    #$2000,SR
  553.     movem.l    (sp)+,d0-d7/a0-a6
  554.     RTE
  555.  
  556. currentsad:    blk.l    1,0
  557. bottom:        blk.l    1,0
  558.  
  559. INTOUTP:
  560.     move.l    #screg,a4
  561.     lea    snd_out,a3
  562.     AND.W    #$00FF,D7    ;MASK OFF RUBBISH
  563.     ADD.B    #$80,D7        ;COMPLENT VALUE
  564.     LSL.W    #3,D7        ;DOUBLE LONG WORD OFFSET
  565.     MOVE.L    0(A3,D7.W),d5    ;GET DATA #1
  566.     MOVE.W    4(A3,D7.W),D4    ;GET DATA #2
  567.     MOVEP.L    D5,0(A4)    ;PLAY #1
  568.     MOVEP.W    D4,0(A4)    ;PLAY #2
  569.     movem.l    (sp)+,d0-d7/a0-a6
  570.     RTE
  571.  
  572.  
  573.  
  574. *    Internal sound lookup table.     *
  575.     EVEN
  576. SND_OUT:
  577.     dc.w    $80c,$90b,$a09,0,$80c,$90b,$a09,0
  578.     dc.w    $80d,$908,$a08,0,$80b,$90b,$a0b,0
  579.     dc.w    $80d,$909,$a05,0,$80c,$90b,$a08,0
  580.     dc.w    $80d,$909,$a02,0,$80d,$908,$a06,0
  581.     dc.w    $80c,$90b,$a07,0,$80d,$907,$a07,0
  582.     dc.w    $80c,$90b,$a06,0,$80c,$90a,$a09,0
  583.     dc.w    $80b,$90b,$a0a,0,$80c,$90b,$a02,0
  584.     dc.w    $80c,$90b,$a00,0,$80c,$90a,$a08,0
  585.  
  586.     dc.w    $80d,$906,$a04,0,$80d,$905,$a05,0
  587.     dc.w    $80d,$905,$a04,0,$80c,$909,$a09,0
  588.     dc.w    $80d,$904,$a03,0,$80b,$90b,$a09,0
  589.     dc.w    $80c,$90a,$a05,0,$80b,$90a,$a0a,0
  590.     dc.w    $80c,$909,$a08,0,$80b,$90b,$a08,0
  591.     dc.w    $80c,$90a,$a00,0,$80c,$90a,$a00,0
  592.     dc.w    $80c,$909,$a07,0,$80b,$90b,$a07,0
  593.     dc.w    $80c,$909,$a06,0,$80b,$90b,$a06,0
  594.  
  595.     dc.w    $80b,$90a,$a09,0,$80b,$90b,$a05,0
  596.     dc.w    $80a,$90a,$a0a,0,$80b,$90b,$a02,0
  597.     dc.w    $80b,$90a,$a08,0,$80c,$907,$a07,0
  598.     dc.w    $80c,$908,$a04,0,$80c,$907,$a06,0
  599.     dc.w    $80b,$909,$a09,0,$80c,$906,$a06,0
  600.     dc.w    $80a,$90a,$a09,0,$80c,$907,$a03,0
  601.     dc.w    $80b,$90a,$a05,0,$80b,$909,$a08,0
  602.     dc.w    $80b,$90a,$a03,0,$80a,$90a,$a08,0
  603.  
  604.     dc.w    $80b,$90a,$a00,0,$80b,$909,$a07,0
  605.     dc.w    $80b,$908,$a08,0,$80a,$90a,$a07,0
  606.     dc.w    $80a,$909,$a09,0,$80c,$901,$a01,0
  607.     dc.w    $80a,$90a,$a06,0,$80b,$908,$a07,0
  608.     dc.w    $80a,$90a,$a05,0,$80a,$909,$a08,0
  609.     dc.w    $80a,$90a,$a02,0,$80a,$90a,$a01,0
  610.     dc.w    $80a,$90a,$a00,0,$809,$909,$a09,0
  611.     dc.w    $80a,$908,$a08,0,$80b,$908,$a01,0
  612.  
  613.     dc.w    $80a,$909,$a06,0,$80b,$907,$a04,0
  614.     dc.w    $80a,$909,$a05,0,$809,$909,$a08,0
  615.     dc.w    $80a,$909,$a03,0,$80a,$908,$a06,0
  616.     dc.w    $80a,$909,$a00,0,$809,$909,$a07,0
  617.     dc.w    $809,$908,$a08,0,$80a,$908,$a04,0
  618.     dc.w    $809,$909,$a06,0,$80a,$908,$a01,0
  619.     dc.w    $809,$909,$a05,0,$809,$908,$a07,0
  620.     dc.w    $808,$908,$a08,0,$809,$909,$a02,0
  621.  
  622.     dc.w    $809,$908,$a06,0,$809,$909,$a00,0
  623.     dc.w    $809,$907,$a07,0,$808,$908,$a07,0
  624.     dc.w    $809,$907,$a06,0,$809,$908,$a02,0
  625.     dc.w    $808,$908,$a06,0,$809,$906,$a06,0
  626.     dc.w    $808,$907,$a07,0,$808,$908,$a04,0
  627.     dc.w    $808,$907,$a06,0,$808,$908,$a02,0
  628.     dc.w    $807,$907,$a07,0,$808,$906,$a06,0
  629.     dc.w    $808,$907,$a04,0,$807,$907,$a06,0
  630.  
  631.     dc.w    $808,$906,$a05,0,$808,$906,$a04,0
  632.     dc.w    $807,$906,$a06,0,$807,$907,$a04,0
  633.     dc.w    $808,$905,$a04,0,$806,$906,$a06,0
  634.     dc.w    $807,$906,$a04,0,$807,$905,$a05,0
  635.     dc.w    $806,$906,$a05,0,$806,$906,$a04,0
  636.     dc.w    $806,$905,$a05,0,$806,$906,$a02,0
  637.     dc.w    $806,$905,$a04,0,$805,$905,$a05,0
  638.     dc.w    $806,$905,$a02,0,$805,$905,$a04,0
  639.  
  640.     dc.w    $805,$904,$a04,0,$805,$905,$a02,0
  641.     dc.w    $804,$904,$a04,0,$804,$904,$a03,0
  642.     dc.w    $804,$904,$a02,0,$804,$903,$a03,0
  643.     dc.w    $803,$903,$a03,0,$803,$903,$a02,0
  644.     dc.w    $803,$902,$a02,0,$802,$902,$a02,0
  645.     dc.w    $802,$902,$a01,0,$801,$901,$a01,0
  646.     dc.w    $802,$901,$a00,0,$801,$901,$a00,0
  647.     dc.w    $801,$900,$a00,0,$800,$900,$a00,0
  648.  
  649.     dc.w    $80e,$90d,$a0c,0,$80f,$903,$a00,0
  650.     dc.w    $80f,$903,$a00,0,$80f,$903,$a00,0
  651.     dc.w    $80f,$903,$a00,0,$80f,$903,$a00,0
  652.     dc.w    $80f,$903,$a00,0,$80e,$90d,$a0b,0
  653.     dc.w    $80e,$90d,$a0b,0,$80e,$90d,$a0b,0
  654.     dc.w    $80e,$90d,$a0b,0,$80e,$90d,$a0b,0
  655.     dc.w    $80e,$90d,$a0b,0,$80e,$90d,$a0b,0
  656.     dc.w    $80e,$90d,$a0a,0,$80e,$90d,$a0a,0
  657.  
  658.     dc.w    $80e,$90d,$a0a,0,$80e,$90d,$a0a,0
  659.     dc.w    $80e,$90c,$a0c,0,$80e,$90d,$a00,0
  660.     dc.w    $80d,$90d,$a0d,0,$80d,$90d,$a0d,0
  661.     dc.w    $80d,$90d,$a0d,0,$80d,$90d,$a0d,0
  662.     dc.w    $80d,$90d,$a0d,0,$80d,$90d,$a0d,0
  663.     dc.w    $80e,$90c,$a0b,0,$80e,$90c,$a0b,0
  664.     dc.w    $80e,$90c,$a0b,0,$80e,$90c,$a0b,0
  665.     dc.w    $80e,$90c,$a0b,0,$80e,$90c,$a0b,0
  666.  
  667.     dc.w    $80e,$90c,$a0b,0,$80e,$90c,$a0b,0
  668.     dc.w    $80e,$90c,$a0a,0,$80e,$90c,$a0a,0
  669.     dc.w    $80e,$90c,$a0a,0,$80e,$90c,$a0a,0
  670.     dc.w    $80d,$90d,$a0c,0,$80d,$90d,$a0c,0
  671.     dc.w    $80e,$90c,$a09,0,$80e,$90c,$a09,0
  672.     dc.w    $80e,$90c,$a05,0,$80e,$90c,$a00,0
  673.     dc.w    $80e,$90c,$a00,0,$80e,$90b,$a0b,0
  674.     dc.w    $80e,$90b,$a0b,0,$80e,$90b,$a0b,0
  675.  
  676.     dc.w    $80e,$90b,$a0b,0,$80e,$90b,$a0a,0
  677.     dc.w    $80e,$90b,$a0a,0,$80e,$90b,$a0a,0
  678.     dc.w    $80d,$90d,$a0b,0,$80d,$90d,$a0b,0
  679.     dc.w    $80d,$90d,$a0b,0,$80e,$90b,$a09,0
  680.     dc.w    $80e,$90b,$a09,0,$80e,$90b,$a09,0
  681.     dc.w    $80d,$90c,$a0c,0,$80d,$90d,$a0a,0
  682.     dc.w    $80e,$90b,$a07,0,$80e,$90b,$a00,0
  683.     dc.w    $80e,$90b,$a00,0,$80d,$90d,$a09,0
  684.  
  685.     dc.w    $80d,$90d,$a09,0,$80e,$90a,$a09,0
  686.     dc.w    $80d,$90d,$a08,0,$80d,$90d,$a07,0
  687.     dc.w    $80d,$90d,$a04,0,$80d,$90d,$a00,0
  688.     dc.w    $80e,$90a,$a04,0,$80e,$909,$a09,0
  689.     dc.w    $80e,$909,$a09,0,$80d,$90c,$a0b,0
  690.     dc.w    $80e,$909,$a08,0,$80e,$909,$a08,0
  691.     dc.w    $80e,$909,$a07,0,$80e,$908,$a08,0
  692.     dc.w    $80e,$909,$a01,0,$80c,$90c,$a0c,0
  693.  
  694.     dc.w    $80d,$90c,$a0a,0,$80e,$908,$a06,0
  695.     dc.w    $80e,$907,$a07,0,$80e,$908,$a00,0
  696.     dc.w    $80e,$907,$a05,0,$80e,$906,$a06,0
  697.     dc.w    $80d,$90c,$a09,0,$80e,$905,$a05,0
  698.     dc.w    $80e,$904,$a04,0,$80d,$90c,$a08,0
  699.     dc.w    $80d,$90b,$a0b,0,$80e,$900,$a00,0
  700.     dc.w    $80d,$90c,$a06,0,$80d,$90c,$a05,0
  701.     dc.w    $80d,$90c,$a02,0,$80c,$90c,$a0b,0
  702.  
  703.     dc.w    $80c,$90c,$a0b,0,$80d,$90b,$a0a,0
  704.     dc.w    $80d,$90b,$a0a,0,$80d,$90b,$a0a,0
  705.     dc.w    $80d,$90b,$a0a,0,$80c,$90c,$a0a,0
  706.     dc.w    $80c,$90c,$a0a,0,$80c,$90c,$a0a,0
  707.     dc.w    $80d,$90b,$a09,0,$80d,$90b,$a09,0
  708.     dc.w    $80d,$90a,$a0a,0,$80d,$90a,$a0a,0
  709.     dc.w    $80d,$90a,$a0a,0,$80c,$90c,$a09,0
  710.     dc.w    $80c,$90c,$a09,0,$80c,$90c,$a09,0
  711.  
  712.     dc.w    $80d,$90b,$a06,0,$80c,$90b,$a0b,0
  713.     dc.w    $80c,$90c,$a08,0,$80d,$90b,$a00,0
  714.     dc.w    $80d,$90b,$a00,0,$80c,$90c,$a07,0
  715.     dc.w    $80c,$90c,$a06,0,$80c,$90c,$a05,0
  716.     dc.w    $80c,$90c,$a03,0,$80c,$90c,$a01,0
  717.     dc.w    $80c,$90b,$a0a,0,$80d,$90a,$a05,0
  718.     dc.w    $80d,$90a,$a04,0,$80d,$90a,$a02,0
  719.     dc.w    $80d,$909,$a08,0,$80d,$909,$a08,0
  720.  
  721.  
  722.  
  723. *       PRESERVE THE MFP REGISTERS      *
  724. SAVEMFP:
  725.     move.w    sr,mysr
  726.     MOVE.B    IERA,MFPMEM    ;PUSH CURRENT MFP DATA
  727.     MOVE.B    IERB,MFPMEM+1
  728.     MOVE.B    IMRA,MFPMEM+2
  729.     MOVE.B    IMRB,MFPMEM+3
  730.     MOVE.B    TADR,MFPMEM+4
  731.     MOVE.B    TACR,MFPMEM+5
  732.     MOVE.B    VECTOR,MFPMEM+6
  733.     RTS
  734. mysr:
  735.     blk.w    1,0
  736. *   REPLACE NATURAL RUNNING MFP VALUES  *
  737. OLDMFP:
  738.     MOVE.B    MFPMEM+6,VECTOR    ;RESTORE OLD MFP VALS
  739.     MOVE.B    MFPMEM+5,TACR
  740.     MOVE.B    MFPMEM+4,TADR
  741.     MOVE.B    MFPMEM+3,IMRB
  742.     MOVE.B    MFPMEM+2,IMRA
  743.     MOVE.B    MFPMEM+1,IERB
  744.     MOVE.B    MFPMEM,IERA
  745.     move.w    mysr,sr
  746.     RTS
  747.  
  748. *    CHOOSE INTERRUPT VECTOR         *
  749. *   SET UP SELECTED INTERRUPT WITH A0.L
  750. *   CONTAINING THE NEW ROUTINE VECTOR.
  751. SETINT:    MOVE.W    SR,D0        ;SAVE SYSTEM STATUS
  752.     MOVE.W    #$2700,SR    ;INTERRUPTS OFF
  753.  
  754.     MOVE.L    A0,ISRVEC    ;INSTALL NEW ROUTINE
  755.  
  756.     MOVE.W    D0,SR        ;RE-ASSERT OLD STATUS
  757.     RTS
  758.  
  759. *       SET UP MFP FREQUENCY            *
  760. SETFREQ:
  761.     MOVE.B    #0,TACR        ;DISABLE TIMER
  762.     AND.W    #7,D0        ;ENSURE 0-7
  763.     MOVE.W    D0,FREQNUM    ;SAVE FOR PROSPERITY
  764.     LEA    FREQTAB,A0    ;GET THE FREQUENCY XREF ADDR
  765.     LSL.W    #1,D0        ;CONVERT TO WORD TABLE OFFSET
  766.     MOVE.W    0(A0,D0.W),D0    ;& GET THE MFP DATA
  767.     MOVE.B    D0,TACR        ;LSB = CONTROL REG BYTE
  768.     LSR.W    #8,D0        ;SHIFT DOWN NEXT BYTE
  769.      MOVE.B    D0,TADR        ;NEXT = DATA REG BYTE
  770.     RTS
  771. *       ENABLE THE MFP            *
  772. ENABMFP:
  773.     bset    #5,IMRA
  774. *    MOVE.B    #0,IMRB
  775.     bset    #5,IERA
  776. *    MOVE.B    #0,IERB
  777.     BCLR    #3,VECTOR
  778.     RTS
  779.  
  780. *    SET UP THE SOUND CHIP CHANNELS     *
  781. SETSND:
  782.     MOVE.B    #0,SCREG    ;CHANNEL A
  783.     MOVE.B    #0,SCDATA
  784.     MOVE.B    #1,SCREG
  785.     MOVE.B    #0,SCDATA
  786.  
  787.     MOVE.B    #2,SCREG    ;CHANNEL B
  788.     MOVE.B    #0,SCDATA
  789.     MOVE.B    #3,SCREG
  790.     MOVE.B    #0,SCDATA
  791.  
  792.     MOVE.B    #4,SCREG    ;CHANNEL C
  793.     MOVE.B    #0,SCDATA
  794.     MOVE.B    #5,SCREG
  795.     MOVE.B    #0,SCDATA
  796.  
  797.     MOVE.B    #7,SCREG    ;SET UP CHANNEL MIXING & PORT 'A' I/O
  798.     MOVE.B    #$FF,SCDATA
  799.  
  800.     MOVE.B    #8,SCREG    ;SET ALL VOLUMES TO ZERO
  801.     MOVE.B    #0,SCDATA
  802.     MOVE.B    #9,SCREG
  803.     MOVE.B    #0,SCDATA
  804.     MOVE.B    #10,SCREG
  805.     MOVE.B    #0,SCDATA
  806.     RTS
  807.  
  808. **************************************
  809. *       MFP/FREQUENCY TABLE          *
  810. **************************************
  811.     EVEN
  812. FREQTAB:
  813.     DC.W    $0506    ;4.9 KHZ
  814.     DC.W    $0505    ;7.68 KHZ
  815.     DC.W    $0405    ;9.6 KHZ
  816.     DC.W    $2901    ;14.99 KHZ
  817.     DC.W    $1F01    ;19.8 KHZ
  818.     DC.W    $0802    ;30.7 KHZ
  819.     DC.W    $0106    ;DUMMY    
  820.     DC.W    $0106    ;DUMMY
  821.  
  822. **************************************
  823. *    DEFINE PROGRAM STORAGE       *
  824. **************************************
  825.     EVEN
  826. XTERNAL:
  827.     blk.B    1,0    ;$FF = EXTERNAL O/P SELECTED
  828. INUSE:
  829.     blk.B    1,0    ;INTERRUPT IN USE FLAG
  830. OPTION:    blk.B    1,0    ;INT. OPTION  $FF = SAMPLE
  831.     EVEN
  832. FREQNUM:
  833.     blk.W    1,1    ;FREQUENCY SELECTED
  834.  
  835. MFPMEM:    blk.B    30,0    ;SAVED MFP DATA
  836.  
  837. *****************************************************************
  838. pregrow:
  839.     move.w    speed,-(sp)
  840.     move.w    #0,speed
  841.     move.w    #50,d0
  842. pg:
  843.     move.w    d0,-(sp)
  844.     bsr    smallgrow
  845.     bsr    copyscr
  846.     bsr    flip_scr
  847.     move.w    (sp)+,d0
  848.     dbf    d0,pg
  849.     move.w    (sp)+,speed
  850.     rts
  851.     
  852.  
  853. *******************************
  854. fadeout:
  855.     move.w    #$2000,sr
  856.     lea    foutlist,a6
  857.     move.w    #6,d6
  858. fo:
  859.     move.l    (a6)+,-(sp)
  860.     move.w    #6,-(sp)
  861.     trap    #14
  862.     addq.l    #6,sp
  863.     move.w    #35000,d7
  864.     bsr    delay
  865.     dbf    d6,fo
  866. *    move.w    #$2400,sr
  867.     rts
  868.  
  869. fadein:
  870.     move.w    #$2000,sr
  871.     lea    finlist,a6
  872.     move.w    #7,d6
  873. fi:
  874.     move.l    (a6)+,-(sp)
  875.     move.w    #6,-(sp)
  876.     trap    #14
  877.     addq.l    #6,sp
  878.     move.w    #35000,d7
  879.     bsr    delay
  880.     dbf    d6,fi
  881. *    move.w    #$2400,sr
  882.     rts
  883.     
  884.  
  885. fadecount:    blk.w    1,0
  886. foutlist:    dc.l    fade1,fade2,fade3,fade4,fade5,fade6,fade7
  887. finlist:    dc.l    fade7,fade6,fade5,fade4,fade3,fade2,fade1,palette
  888. *******************************************************
  889. bubblestuff:
  890. *    bsr    fadeout
  891.     jsr    loadballs
  892.     move.w    #1,dopr
  893.     move.w    #0,ballhits
  894.     move.w    #1,dopr
  895.     move.w    #162,mmax
  896.     move.w    #0,mmin
  897.     move.w    #0,mmax2
  898.     move.w    #162,mmin2
  899.     move.w    #-1,b1
  900.     move.w    #-1,b2
  901.     move.w    #-1,b3
  902.     move.w    #-1,b4
  903.     move.w    #-1,b5
  904.     move.w    #-1,b6
  905.     move.w    #-1,b7
  906.     move.w    #80,mx
  907.     bsr    copyscr
  908.     bsr    flip_scr
  909.     bsr    copyscr
  910.     bsr    flip_scr
  911.     bsr    fadein
  912.     
  913. bloop:
  914.     bsr    copyscr
  915.     bsr    putsp
  916.     bsr    bdrop
  917.     bsr    shoot2
  918.     bsr    amidead
  919.     bsr    amidead
  920.     bsr    flip_scr
  921.     bsr    keyboard
  922.     bsr    putnums
  923.     cmpi.w    #30,ballhits
  924.     bge    bbloop2
  925.     cmpi.w    #10,brhits
  926.     bge    bbloop
  927.     bra    bloop
  928.  
  929. bbloop:
  930. *    subq    #1,level
  931.     bsr    boom
  932. bbl:    tst.b    inuse
  933.     bne    bbl
  934.     bsr    laugh
  935.     bra    skipb
  936.  
  937. bbloop2:
  938. *    subq    #1,level
  939.     bsr    reward
  940.     bra    skipb
  941.  
  942. ballhits:    blk.w    1,0
  943.  
  944. ******************************************
  945. bdrop:
  946. bub1:
  947.     tst.w    b1
  948.     bpl    bub1move
  949.     move.l    #100,d0
  950.     bsr    randomplus
  951.     cmpi.w    #1,d0
  952.     bgt    bub2
  953.     move.w    #1,b1
  954.     move.w    #0,bub1y
  955.     move.w    #159,d0
  956.     bsr    randomplus
  957.     add.w    #25,d0
  958.     move.w    d0,bub1x
  959. bub1move:
  960.     addq.w    #1,bub1y
  961.     move.w  bub1x,spblock
  962.         move.w  bub1y,spblock+2
  963.         move.w  #16,spblock+4
  964.         move.w  #1,spblock+6
  965.         move.l  #gtemp,spblock+12
  966.         move.w  #1,spblock+26
  967.         move.l  #gmask,spblock+38
  968.     move.l    #bubble,spblock+8
  969.     move.l    #b1,a0
  970.     bsr    bubout
  971.     bsr    shotsp
  972. bub2:
  973.     tst.w    b2
  974.     bpl    bub2move
  975.     move.l    #100,d0
  976.     bsr    randomplus
  977.     cmpi.w    #1,d0
  978.     bgt    bub3
  979.     move.w    #1,b2
  980.     move.w    #0,bub2y
  981.     move.w    #159,d0
  982.     bsr    randomplus
  983.     add.w    #25,d0
  984.     move.w    d0,bub2x
  985. bub2move:
  986.     addq.w    #2,bub2y
  987.     move.w  bub2x,spblock
  988.         move.w  bub2y,spblock+2
  989.         move.w  #16,spblock+4
  990.         move.w  #1,spblock+6
  991.         move.l  #gtemp,spblock+12
  992.         move.w  #1,spblock+26
  993.         move.l  #gmask,spblock+38
  994.     move.l    #bubble,spblock+8
  995.     move.l    #b2,a0
  996.     bsr    bubout
  997.     bsr    shotsp
  998.  
  999. bub3:
  1000.     tst.w    b3
  1001.     bpl    bub3move
  1002.     move.l    #100,d0
  1003.     bsr    randomplus
  1004.     cmpi.w    #1,d0
  1005.     bgt    bub4
  1006.     move.w    #1,b3
  1007.     move.w    #0,bub3y
  1008.     move.w    #159,d0
  1009.     bsr    randomplus
  1010.     add.w    #25,d0
  1011.     move.w    d0,bub3x
  1012. bub3move:
  1013.     addq.w    #1,bub3y
  1014.     move.w  bub3x,spblock
  1015.         move.w  bub3y,spblock+2
  1016.         move.w  #16,spblock+4
  1017.         move.w  #1,spblock+6
  1018.         move.l  #gtemp,spblock+12
  1019.         move.w  #1,spblock+26
  1020.         move.l  #gmask,spblock+38
  1021.     move.l    #bubble,spblock+8
  1022.     move.l    #b3,a0
  1023.     bsr    bubout
  1024.     bsr    shotsp
  1025. bub4:
  1026.     tst.w    b4
  1027.     bpl    bub4move
  1028.     move.l    #100,d0
  1029.     bsr    randomplus
  1030.     cmpi.w    #1,d0
  1031.     bgt    bub5
  1032.     move.w    #1,b4
  1033.     move.w    #0,bub4y
  1034.     move.w    #159,d0
  1035.     bsr    randomplus
  1036.     add.w    #25,d0
  1037.     move.w    d0,bub4x
  1038. bub4move:
  1039.     addq.w    #2,bub4y
  1040.     move.w  bub4x,spblock
  1041.         move.w  bub4y,spblock+2
  1042.         move.w  #16,spblock+4
  1043.         move.w  #1,spblock+6
  1044.         move.l  #gtemp,spblock+12
  1045.         move.w  #1,spblock+26
  1046.         move.l  #gmask,spblock+38
  1047.     move.l    #bubble,spblock+8
  1048.     move.l    #b4,a0
  1049.     bsr    bubout
  1050.     bsr    shotsp
  1051.  
  1052. bub5:
  1053.     tst.w    b5
  1054.     bpl    bub5move
  1055.     move.l    #100,d0
  1056.     bsr    randomplus
  1057.     cmpi.w    #1,d0
  1058.     bgt    bub6
  1059.     move.w    #1,b5
  1060.     move.w    #0,bub5y
  1061.     move.w    #159,d0
  1062.     bsr    randomplus
  1063.     add.w    #25,d0
  1064.     move.w    d0,bub5x
  1065. bub5move:
  1066.     addq.w    #1,bub5y
  1067.     move.w  bub5x,spblock
  1068.         move.w  bub5y,spblock+2
  1069.         move.w  #16,spblock+4
  1070.         move.w  #1,spblock+6
  1071.         move.l  #gtemp,spblock+12
  1072.         move.w  #1,spblock+26
  1073.         move.l  #gmask,spblock+38
  1074.     move.l    #bubble,spblock+8
  1075.     move.l    #b5,a0
  1076.     bsr    bubout
  1077.     bsr    shotsp
  1078. bub6:
  1079.     tst.w    b6
  1080.     bpl    bub6move
  1081.     move.l    #100,d0
  1082.     bsr    randomplus
  1083.     cmpi.w    #1,d0
  1084.     bgt    bub7
  1085.     move.w    #1,b6
  1086.     move.w    #0,bub6y
  1087.     move.w    #159,d0
  1088.     bsr    randomplus
  1089.     add.w    #25,d0
  1090.     move.w    d0,bub6x
  1091. bub6move:
  1092.     addq.w    #2,bub6y
  1093.     move.w  bub6x,spblock
  1094.         move.w  bub6y,spblock+2
  1095.         move.w  #16,spblock+4
  1096.         move.w  #1,spblock+6
  1097.         move.l  #gtemp,spblock+12
  1098.         move.w  #1,spblock+26
  1099.         move.l  #gmask,spblock+38
  1100.     move.l    #bubble,spblock+8
  1101.     move.l    #b6,a0
  1102.     bsr    bubout
  1103.     bsr    shotsp
  1104.  
  1105. bub7:
  1106.     tst.w    b7
  1107.     bpl    bub7move
  1108.     move.l    #100,d0
  1109.     bsr    randomplus
  1110.     cmpi.w    #1,d0
  1111.     bgt    bub8
  1112.     move.w    #1,b7
  1113.     move.w    #0,bub7y
  1114.     move.w    #159,d0
  1115.     bsr    randomplus
  1116.     add.w    #25,d0
  1117.     move.w    d0,bub7x
  1118. bub7move:
  1119.     addq.w    #1,bub7y
  1120.     move.w  bub7x,spblock
  1121.         move.w  bub7y,spblock+2
  1122.         move.w  #16,spblock+4
  1123.         move.w  #1,spblock+6
  1124.         move.l  #gtemp,spblock+12
  1125.         move.w  #1,spblock+26
  1126.         move.l  #gmask,spblock+38
  1127.     move.l    #bubble,spblock+8
  1128.     move.l    #b7,a0
  1129.     bsr    bubout
  1130.     bsr    shotsp
  1131. bub8:
  1132.     rts
  1133. ******************************************
  1134. b1:    blk.w    1,-1
  1135. bub1x:    blk.w    1,0
  1136. bub1y:    blk.w    1,0
  1137. b2:    blk.w    1,-1
  1138. bub2x:    blk.w    1,0
  1139. bub2y:    blk.w    1,0
  1140. b3:    blk.w    1,-1
  1141. bub3x:    blk.w    1,0
  1142. bub3y:    blk.w    1,0
  1143. b4:    blk.w    1,-1
  1144. bub4x:    blk.w    1,0
  1145. bub4y:    blk.w    1,0
  1146. b5:    blk.w    1,-1
  1147. bub5x:    blk.w    1,0
  1148. bub5y:    blk.w    1,0
  1149. b6:    blk.w    1,-1
  1150. bub6x:    blk.w    1,0
  1151. bub6y:    blk.w    1,0
  1152. b7:    blk.w    1,-1
  1153. bub7x:    blk.w    1,0
  1154. bub7y:    blk.w    1,0
  1155.     
  1156. ****************************************
  1157. bubout:
  1158.     cmpi.w    #184,spblock+2
  1159.     blt    buboutb
  1160.     move.w    #-1,(a0)        
  1161.     move.w    #10,brhits
  1162.     subq.w    #1,ships
  1163.     move.b    #1,dopr
  1164. buboutb:
  1165.     rts
  1166.  
  1167.  
  1168. **************************************
  1169. attack:
  1170.     cmpi.w    #4,level
  1171.     ble    na
  1172.     tst.w    attacker
  1173.     bmi    noattack
  1174.     bra    isattack
  1175. noattack:
  1176.     move.l    #100,d0
  1177.     bsr    randomplus
  1178.     cmpi.w    #1,d0
  1179.     bge    na
  1180.     bsr    appear
  1181.     move.w    #1,attacker
  1182.     move.l    #3,d0
  1183.     bsr    randomplus
  1184.     addq.w    #1,d0
  1185.     move.w    d0,atyvel
  1186.     move.l    #3,d0
  1187.     bsr    randomplus
  1188.     addq.w    #1,d0
  1189.     move.w    d0,atxvel
  1190.     move.w    #112,atx
  1191.     move.w    #99,aty
  1192.     move.w    #0,atani
  1193. isattack:
  1194.     move.w    atxvel,d0
  1195.     add.w    d0,atx
  1196.     move.w  atx,spblock
  1197.     move.w    atyvel,d0
  1198.     add.w    d0,aty
  1199.         move.w  aty,spblock+2
  1200.         move.w  #16,spblock+4
  1201.         move.w  #1,spblock+6
  1202.         move.l  #gtemp,spblock+12
  1203.         move.w  #1,spblock+26
  1204.         move.l  #gmask,spblock+38
  1205.     bsr    attackani
  1206.     bsr    atmaths    
  1207.     bsr    shotsp
  1208. na:    rts
  1209.  
  1210.  
  1211. attacker:
  1212.     blk.w    1,0
  1213. atyvel:    blk.w    1,0
  1214. atxvel:    blk.w    1,0
  1215. atx:    blk.w    1,0
  1216. aty:    blk.w    1,0
  1217. atani:    blk.w    1,0
  1218. ******************************
  1219. attackani:
  1220.     move.l    #0,d0
  1221.     move.w    atani,d0
  1222.     mulu    #4,d0
  1223.     lea    atlist,a0
  1224.     move.l    (a0,d0.w),spblock+8
  1225. *    move.l    #balls3,spblock+8
  1226.     addq.w    #1,atani
  1227.     cmpi.w    #21,atani
  1228.     blt    atnb
  1229.     move.w    #0,atani
  1230. atnb:
  1231.     rts
  1232.  
  1233. atlist:
  1234.     dc.l    balls1,balls2,balls3,balls4,balls5,balls6,balls7
  1235.     dc.l    balls8,balls9,balls10,balls11,balls12,balls13,balls14
  1236.     dc.l    balls15,balls16,balls17,balls18,balls19,balls20,balls21
  1237. *******************************
  1238. atmaths:
  1239.     move.w    atx,d0
  1240.     move.w    aty,d1
  1241.     add.w    atxvel,d0
  1242.     add.w    atyvel,d1
  1243.     cmpi.w    #4,d0
  1244.     bgt    atm1
  1245.     neg    atxvel
  1246.     bra    chkhit1
  1247. atm1:
  1248.     cmpi.w    #208,d0
  1249.     blt    atm2
  1250.     neg    atxvel
  1251.     bra    chkhit3
  1252. atm2:
  1253.     cmpi.w    #4,d1
  1254.     bgt    atm3
  1255.     neg    atyvel
  1256.     bra    chkhit2
  1257. atm3:
  1258.     cmpi.w    #180,d1
  1259.     blt    atm4
  1260.     neg    atyvel
  1261.     bra    chkhit4
  1262. atm4:
  1263.     rts
  1264.  
  1265. chkhit1:
  1266.     cmpi.w    #1,whsp
  1267.     bne    ch1b
  1268.     move.w    shipy,d0
  1269.     sub.w    #16,d0
  1270.     cmp.w    aty,d0
  1271.     bgt    ch1b
  1272.     add.w    #48,d0
  1273.     cmp.w    aty,d0
  1274.     blt    ch1b
  1275.     move.w    #1,hesdead
  1276. ch1b:    rts
  1277.  
  1278. chkhit2:
  1279.     cmpi.w    #2,whsp
  1280.     bne    ch2b
  1281.     move.w    shipx,d0
  1282.     sub.w    #16,d0
  1283.     cmp.w    atx,d0
  1284.     bgt    ch2b
  1285.     add.w    #48,d0
  1286.     cmp.w    atx,d0
  1287.     blt    ch2b
  1288.     move.w    #1,hesdead
  1289. ch2b:    rts
  1290.  
  1291. chkhit3:
  1292.     cmpi.w    #3,whsp
  1293.     bne    ch3b
  1294.     move.w    shipy,d0
  1295.     sub.w    #16,d0
  1296.     cmp.w    aty,d0
  1297.     bgt    ch3b
  1298.     add.w    #48,d0
  1299.     cmp.w    aty,d0
  1300.     blt    ch3b
  1301.     move.w    #1,hesdead
  1302. ch3b:    rts
  1303.     
  1304. chkhit4:
  1305.     cmpi.w    #0,whsp
  1306.     bne    ch4b
  1307.     move.w    shipx,d0
  1308.     sub.w    #16,d0
  1309.     cmp.w    atx,d0
  1310.     bgt    ch4b
  1311.     add.w    #48,d0
  1312.     cmp.w    atx,d0
  1313.     blt    ch4b
  1314.     move.w    #1,hesdead
  1315. ch4b:    rts
  1316.  
  1317. **********************************************************
  1318. blowitup:
  1319.     move.w    #1,dopr
  1320.     bsr    bigboomsound
  1321.     move.w    #30,d7
  1322. bip:
  1323.     move.w    d7,-(sp)
  1324.     move.l    screen3,a0
  1325.     add.l    #13328,a0
  1326.     move.w    #31,d6
  1327. bip1:
  1328.     move.w    #%0111111111111111,d0
  1329.     bsr    random
  1330.     move.w    d0,(a0)+
  1331.     move.w    #0,(a0)+
  1332.     move.w    #0,(a0)+
  1333.     move.w    #0,(a0)+
  1334.     move.w    #0111111111111111,d0
  1335.     bsr    random
  1336.     move.w    d0,(a0)+
  1337.     move.w    #0,(a0)+
  1338.     move.w    #0,(a0)+
  1339.     move.w    #0,(a0)+
  1340.     add.l    #144,a0
  1341.     dbf    d6,bip1
  1342.  
  1343.     bsr    copyscr
  1344.     bsr    blowani
  1345.     add.w    #-2,b1x
  1346.     move.w  b1x,spblock    ;\
  1347.     add.w    #-2,b1y
  1348.         move.w  b1y,spblock+2
  1349.         move.w  #16,spblock+4
  1350.         move.w  #1,spblock+6
  1351.         move.l  #gtemp,spblock+12
  1352.         move.w  #1,spblock+26
  1353.         move.l  #gmask,spblock+38
  1354.     bsr    shotsp
  1355.  
  1356.     add.w    #0,b2x
  1357.     move.w  b2x,spblock    ;|
  1358.     add.w    #-3,b2y
  1359.         move.w  b2y,spblock+2
  1360.         move.w  #16,spblock+4
  1361.         move.w  #1,spblock+6
  1362.         move.l  #gtemp,spblock+12
  1363.         move.w  #1,spblock+26
  1364.         move.l  #gmask,spblock+38
  1365.     bsr    shotsp
  1366.  
  1367.     add.w    #2,b3x
  1368.     move.w  b3x,spblock    ;/
  1369.     add.w    #-2,b3y
  1370.         move.w  b3y,spblock+2
  1371.         move.w  #16,spblock+4
  1372.         move.w  #1,spblock+6
  1373.         move.l  #gtemp,spblock+12
  1374.         move.w  #1,spblock+26
  1375.         move.l  #gmask,spblock+38
  1376.     bsr    shotsp
  1377.  
  1378.     add.w    #3,b4x
  1379.     move.w  b4x,spblock    ;-
  1380.     add.w    #0,b4y
  1381.         move.w  b4y,spblock+2
  1382.         move.w  #16,spblock+4
  1383.         move.w  #1,spblock+6
  1384.         move.l  #gtemp,spblock+12
  1385.         move.w  #1,spblock+26
  1386.         move.l  #gmask,spblock+38
  1387.     bsr    shotsp
  1388.  
  1389.     add.w    #2,b5x
  1390.     move.w  b5x,spblock    ;\
  1391.     add.w    #2,b5y
  1392.         move.w  b5y,spblock+2
  1393.         move.w  #16,spblock+4
  1394.         move.w  #1,spblock+6
  1395.         move.l  #gtemp,spblock+12
  1396.         move.w  #1,spblock+26
  1397.         move.l  #gmask,spblock+38
  1398.     bsr    shotsp
  1399.  
  1400.     add.w    #0,b6x
  1401.     move.w  b6x,spblock    ;|
  1402.     add.w    #3,b6y
  1403.         move.w  b6y,spblock+2
  1404.         move.w  #16,spblock+4
  1405.         move.w  #1,spblock+6
  1406.         move.l  #gtemp,spblock+12
  1407.         move.w  #1,spblock+26
  1408.         move.l  #gmask,spblock+38
  1409.     bsr    shotsp
  1410.  
  1411.     add.w    #-2,b7x
  1412.     move.w  b7x,spblock    ;/
  1413.     add.w    #2,b7y
  1414.         move.w  b7y,spblock+2
  1415.         move.w  #16,spblock+4
  1416.         move.w  #1,spblock+6
  1417.         move.l  #gtemp,spblock+12
  1418.         move.w  #1,spblock+26
  1419.         move.l  #gmask,spblock+38
  1420.     bsr    shotsp
  1421.  
  1422.     add.w    #-3,b8x
  1423.     move.w  b8x,spblock    ;-
  1424.     add.w    #0,b8y
  1425.         move.w  b8y,spblock+2
  1426.         move.w  #16,spblock+4
  1427.         move.w  #1,spblock+6
  1428.         move.l  #gtemp,spblock+12
  1429.         move.w  #1,spblock+26
  1430.         move.l  #gmask,spblock+38
  1431.     bsr    shotsp
  1432.     bsr    putnums
  1433.     bsr    flip_scr
  1434.     bsr    keyboard
  1435.     move.w    (sp)+,d7
  1436.     dbf    d7,bip
  1437.     bsr    pay
  1438. pwait:
  1439.     tst.b    inuse
  1440.     bne    pwait
  1441.     rts
  1442.  
  1443.  
  1444. blowani:
  1445.     move.l    #0,d0
  1446.     move.w    blani,d0
  1447.     mulu    #4,d0
  1448.     lea    bllist,a0
  1449.     move.l    (a0,d0.w),spblock+8
  1450.     addq.w    #1,blani
  1451.     cmpi.w    #3,blani
  1452.     blt    bl
  1453.     move.w    #0,blani
  1454. bl:
  1455.     rts
  1456.  
  1457. bllist:    dc.l    gore1,gore2,gore3
  1458. blani:    blk.w    1,0
  1459. b1x:    blk.w    1,0
  1460. b1y:    blk.w    1,0
  1461. b2x:    blk.w    1,0
  1462. b2y:    blk.w    1,0
  1463. b3x:    blk.w    1,0
  1464. b3y:    blk.w    1,0
  1465. b4x:    blk.w    1,0
  1466. b4y:    blk.w    1,0
  1467. b5x:    blk.w    1,0
  1468. b5y:    blk.w    1,0
  1469. b6x:    blk.w    1,0
  1470. b6y:    blk.w    1,0
  1471. b7x:    blk.w    1,0
  1472. b7y:    blk.w    1,0
  1473. b8x:    blk.w    1,0
  1474. b8y:    blk.w    1,0
  1475. **************************************
  1476. battack:
  1477.     cmpi.w    #8,level
  1478.     ble    bna
  1479.     tst.w    battacker
  1480.     bmi    bnoattack
  1481.     bra    bisattack
  1482. bnoattack:
  1483.     move.l    #100,d0
  1484.     bsr    randomplus
  1485.     cmpi.w    #1,d0
  1486.     bge    bna
  1487.     bsr    appear
  1488.     move.w    #1,battacker
  1489.     move.l    #3,d0
  1490.     bsr    randomplus
  1491.     addq.w    #1,d0
  1492.     move.w    d0,batyvel
  1493.     move.l    #3,d0
  1494.     bsr    randomplus
  1495.     addq.w    #1,d0
  1496.     move.w    d0,batxvel
  1497.     move.w    #112,batx
  1498.     move.w    #99,baty
  1499.     move.w    #0,batani
  1500. bisattack:
  1501.     move.w    batxvel,d0
  1502.     add.w    d0,batx
  1503.     move.w  batx,spblock
  1504.     move.w    batyvel,d0
  1505.     add.w    d0,baty
  1506.         move.w  baty,spblock+2
  1507.         move.w  #16,spblock+4
  1508.         move.w  #1,spblock+6
  1509.         move.l  #gtemp,spblock+12
  1510.         move.w  #1,spblock+26
  1511.         move.l  #gmask,spblock+38
  1512.     bsr    battackani
  1513.     bsr    batmaths    
  1514.     bsr    shotsp
  1515. bna:    rts
  1516.  
  1517.  
  1518. battacker:
  1519.     blk.w    1,0
  1520. batyvel:    blk.w    1,0
  1521. batxvel:    blk.w    1,0
  1522. batx:    blk.w    1,0
  1523. baty:    blk.w    1,0
  1524. batani:    blk.w    1,0
  1525. ******************************
  1526. battackani:
  1527.     move.l    #0,d0
  1528.     move.w    batani,d0
  1529.     mulu    #4,d0
  1530.     lea    atlist,a0
  1531.     move.l    (a0,d0.w),spblock+8
  1532. *    move.l    #balls3,spblock+8
  1533.     addq.w    #1,batani
  1534.     cmpi.w    #21,batani
  1535.     blt    batnb
  1536.     move.w    #0,batani
  1537. batnb:
  1538.     rts
  1539.  
  1540. *******************************
  1541. batmaths:
  1542.     move.w    batx,d0
  1543.     move.w    baty,d1
  1544.     add.w    batxvel,d0
  1545.     add.w    batyvel,d1
  1546.     cmpi.w    #4,d0
  1547.     bgt    batm1
  1548.     neg    batxvel
  1549.     bra    bchkhit1
  1550.     rts
  1551. batm1:
  1552.     cmpi.w    #208,d0
  1553.     blt    batm2
  1554.     neg    batxvel
  1555.     bra    bchkhit3
  1556.     rts
  1557. batm2:
  1558.     cmpi.w    #4,d1
  1559.     bgt    batm3
  1560.     neg    batyvel
  1561.     bra    bchkhit2
  1562.     rts
  1563. batm3:
  1564.     cmpi.w    #180,d1
  1565.     blt    batm4
  1566.     neg    batyvel
  1567.     bra    bchkhit4
  1568.     rts
  1569. batm4:
  1570.     rts
  1571.  
  1572. bchkhit1:
  1573.     cmpi.w    #1,whsp
  1574.     bne    bch1b
  1575.     move.w    shipy,d0
  1576.     sub.w    #16,d0
  1577.     cmp.w    baty,d0
  1578.     bgt    bch1b
  1579.     add.w    #48,d0
  1580.     cmp.w    baty,d0
  1581.     blt    bch1b
  1582.     move.w    #1,hesdead
  1583. bch1b:    rts
  1584.  
  1585. bchkhit2:
  1586.     cmpi.w    #2,whsp
  1587.     bne    bch2b
  1588.     move.w    shipx,d0
  1589.     sub.w    #16,d0
  1590.     cmp.w    batx,d0
  1591.     bgt    bch2b
  1592.     add.w    #48,d0
  1593.     cmp.w    batx,d0
  1594.     blt    bch2b
  1595.     move.w    #1,hesdead
  1596. bch2b:    rts
  1597.  
  1598. bchkhit3:
  1599.     cmpi.w    #3,whsp
  1600.     bne    bch3b
  1601.     move.w    shipy,d0
  1602.     sub.w    #16,d0
  1603.     cmp.w    baty,d0
  1604.     bgt    bch3b
  1605.     add.w    #48,d0
  1606.     cmp.w    baty,d0
  1607.     blt    bch3b
  1608.     move.w    #1,hesdead
  1609. bch3b:    rts
  1610.     
  1611. bchkhit4:
  1612.     cmpi.w    #0,whsp
  1613.     bne    bch4b
  1614.     move.w    shipx,d0
  1615.     sub.w    #16,d0
  1616.     cmp.w    batx,d0
  1617.     bgt    bch4b
  1618.     add.w    #48,d0
  1619.     cmp.w    batx,d0
  1620.     blt    bch4b
  1621.     move.w    #1,hesdead
  1622. bch4b:    rts
  1623.  
  1624. remember:    blk.w    1,-1
  1625. bigavail:    blk.w    1,-1
  1626. break:        blk.w    1,-1
  1627. **********************************
  1628.         
  1629. *******************************
  1630. prebreakout:
  1631.     jsr    loadcorners
  1632.     bsr    putfirst
  1633.     bsr    fadein
  1634.     move.w    #1,dopr
  1635.     move.w    #1,break
  1636.     move.w    #0,blockout
  1637.     move.l    #bat0,wship0
  1638.     move.l    #bat1,wship1
  1639.     move.l    #bat2,wship2
  1640.     move.l    #bat3,wship3
  1641.     tst.w    bigavail
  1642.     bmi    preb
  1643.     move.w    #1,remember
  1644.     move.w    #-1,bigavail
  1645. preb:
  1646.     bsr    copyscr
  1647.     bsr    putnums
  1648.     bsr    putsp
  1649.     move.w    #1,sw
  1650.     move.w    #5,sh
  1651.         move.w  shipx,d0
  1652.         move.w  shipy,d1
  1653.         tst.w   whsp
  1654.         bne     ps1
  1655.         add.w   #16,d0
  1656.         subq.w  #5,d1
  1657.         move.w  #-2,hotxvel
  1658.         move.w  #-2,hotyvel
  1659.         bra     psback
  1660. ps1:
  1661.         cmpi.w  #1,whsp
  1662.         bne     ps2
  1663.         add.w   #16,d1
  1664.         add.w   #10,d0
  1665.         move.w  #2,hotxvel
  1666.         move.w  #-2,hotyvel
  1667.         bra     psback
  1668. ps2:
  1669.         cmpi.w  #2,whsp
  1670.         bne     ps3
  1671.         add.w   #12,d0
  1672.         add.w   #11,d1
  1673.         move.w  #2,hotxvel
  1674.         move.w  #2,hotyvel
  1675.         bra     psback
  1676. ps3:
  1677.         subq.w  #6,d0
  1678.         add.w   #11,d1  
  1679.         move.w  #-2,hotxvel
  1680.         move.w  #2,hotyvel
  1681. psback: move.w  d0,hootx
  1682.         move.w  d1,hooty
  1683.     bsr    doball
  1684.     bsr    flip_scr
  1685.     tst.w    buttondat
  1686.     bne    breakout
  1687.     bra    preb
  1688.  
  1689.  
  1690. breakout:
  1691.     move.l    #bat0,wship0
  1692.     move.l    #bat1,wship1
  1693.     move.l    #bat2,wship2
  1694.     move.l    #bat3,wship3
  1695.     bsr    copyscr
  1696.     bsr    putsp
  1697.     bsr    doball
  1698.     bsr    shoot
  1699.     bsr    amidead
  1700.     bsr    putnums
  1701.         bsr     flip_scr
  1702.     bsr    keyboard
  1703.     tst.w    sdead
  1704.     bpl    psk
  1705.     cmpi.w    #10,brhits
  1706.     bge    prenextlev
  1707.     cmpi.w    #48,blockout
  1708.     bge    bout
  1709.     bra    breakout
  1710.  
  1711. prenextlev:
  1712.     tst.w    remember
  1713.     bmi    pnlb
  1714.     move.w    #1,bigavail
  1715.     bsr    weapons
  1716. pnlb:
  1717.     move.w    #-1,remember
  1718.     bra    nextlev
  1719.  
  1720. bout:
  1721.     move.w    #1,bigavail
  1722.     move.w    #1,remember
  1723.     bra    prenextlev
  1724.  
  1725. psk:
  1726.     tst.w    remember
  1727.     bmi    spnlb
  1728.     move.w    #1,bigavail
  1729.     bsr    weapons
  1730. spnlb:
  1731.     move.w    #-1,remember
  1732.     move.w    #-1,sdead
  1733.     bra    skipb
  1734.  
  1735. ***************************
  1736. doball:
  1737.         move.w  sh,spblock+4
  1738.         move.w  sw,spblock+6
  1739.         move.l  #ball,spblock+8
  1740.         move.l  #gtemp,spblock+12
  1741.         move.w  sw,spblock+26
  1742.         move.l  #gmask,spblock+38
  1743.     bra    maths    
  1744.  
  1745. imback:    move.l    #0,d0
  1746.     move.l    #0,d1
  1747.     move.l    ptsin,a0
  1748.     move.w    hootx,d0
  1749.     move.w    hooty,d1
  1750.     add.w    hotxvel,d0
  1751.     add.w    hotyvel,d1
  1752. *    add.w    hotxvel,d0
  1753. *    add.w    hotyvel,d1
  1754.     move.w    d0,(a0)
  1755.     move.w    d1,2(a0)
  1756.     add.w    #2,(a0)
  1757.     dc.w    getpix
  1758.     tst.w    d0
  1759.     beq    ball1
  1760.     neg    hotyvel
  1761.     bsr    hitablock2
  1762.     bra    ball4
  1763. ball1:
  1764.     move.l    ptsin,a0
  1765.     add.w    #2,(a0)
  1766.     add.w    #2,2(a0)
  1767.     dc.w    getpix
  1768.     tst.w    d0
  1769.     beq    ball2
  1770.     neg    hotxvel
  1771.     bsr    hitablock2
  1772.     bra    ball4
  1773. ball2:
  1774.     move.l    ptsin,a0
  1775.     sub.w    #2,(a0)
  1776.     add.w    #2,2(a0)
  1777.     dc.w    getpix
  1778.     tst.w    d0
  1779.     beq    ball3
  1780.     neg    hotyvel
  1781.     bsr    hitablock2
  1782.     bra    ball4
  1783. ball3:
  1784.     move.l    ptsin,a0
  1785.     sub.w    #2,(a0)
  1786.     sub.w    #2,2(a0)
  1787.     dc.w    getpix
  1788.     tst.w    d0
  1789.     beq    ball4
  1790.     neg    hotxvel
  1791.     bsr    hitablock2
  1792. ball4:
  1793.     move.w    hotxvel,d7
  1794.     add.w    d7,hootx
  1795.     move.w  hootx,spblock
  1796.     move.w    hotyvel,d7
  1797.     add.w    d7,hooty
  1798.         move.w  hooty,spblock+2
  1799.     bsr    shotsp
  1800.     rts
  1801.  
  1802. sdead:    blk.w    1,-1
  1803. *******************************
  1804. mathover:
  1805.     bsr    boom
  1806.     move.w    #13,d0
  1807.     move.l    pa,a0
  1808.     move.l    #boomcols,a1
  1809. mo2:    move.w    (a1)+,pa
  1810.     move.w    #50000,d7
  1811.     bsr    delay
  1812.     dbf    d0,mo2
  1813.     move.w    #1,sdead
  1814.     bra    ball4
  1815.  
  1816. maths:
  1817.     move.w    hootx,d0
  1818.     move.w    hooty,d1
  1819.     add.w    hotxvel,d0
  1820.     add.w    hotyvel,d1
  1821.     addq.w    #2,d0
  1822.     addq.w    #2,d1
  1823.  
  1824.  
  1825.     cmpi.w    #12,d0
  1826.     bge    m1
  1827.     bra    hkhit1
  1828.     
  1829. m1:
  1830.     cmpi.w    #212,d0
  1831.     ble    m2
  1832.     bra    hkhit3
  1833. m2:
  1834.     cmpi.w    #12,d1
  1835.     bge    m3
  1836.     bra    hkhit2
  1837. m3:
  1838.     cmpi.w    #187,d1
  1839.     ble    m4
  1840.     bra    hkhit4
  1841. m4:
  1842.     bra    imback
  1843.  
  1844. hkhit1:
  1845.     cmpi.w    #1,whsp
  1846.     bne    h1b
  1847.     move.w    shipy,d2
  1848.     sub.w    #4,d2
  1849.     cmp.w    d1,d2
  1850.     bgt    h1b
  1851.     add.w    #36,d2
  1852.     cmp.w    d1,d2
  1853.     blt    h1b
  1854.     neg    hotxvel
  1855.     bra    ball4
  1856. h1b:
  1857.     cmpi.w    #26,d1
  1858.     blt    hh1
  1859.     cmpi.w    #173,d1
  1860.     blt    h1c
  1861.  
  1862. hh1:    neg    hotxvel
  1863.     bra    ball4
  1864.  
  1865. h1c:    bra    mathover
  1866.  
  1867.  
  1868. hkhit2:
  1869.     cmpi.w    #2,whsp
  1870.     bne    h2b
  1871.     move.w    shipx,d2
  1872.     sub.w    #4,d2
  1873.     cmp.w    d0,d2
  1874.     bgt    h2b
  1875.     add.w    #36,d2
  1876.     cmp.w    d0,d2
  1877.     blt    h2b
  1878.     neg    hotyvel
  1879.     bra    ball4
  1880. h2b:
  1881.     cmpi.w    #26,d0
  1882.     blt    hh2
  1883.     cmpi.w    #198,d0
  1884.     blt    h2c
  1885. hh2:    neg    hotyvel
  1886.     bra    ball4
  1887.  
  1888. h2c:    bra    mathover
  1889.  
  1890. hkhit3:
  1891.     cmpi.w    #3,whsp
  1892.     bne    h3b
  1893.     move.w    shipy,d2
  1894.     sub.w    #4,d2
  1895.     cmp.w    d1,d2
  1896.     bgt    h3b
  1897.     add.w    #36,d2
  1898.     cmp.w    d1,d2
  1899.     blt    h3b
  1900.     neg    hotxvel
  1901.     bra    ball4
  1902. h3b:
  1903.     cmpi.w    #26,d1
  1904.     blt    hh3
  1905.     cmpi.w    #173,d1
  1906.     blt    h3c
  1907. hh3:    neg    hotxvel
  1908.     bra    ball4
  1909.  
  1910. h3c:    bra    mathover
  1911.     
  1912. hkhit4:
  1913.     cmpi.w    #0,whsp
  1914.     bne    h4b
  1915.     move.w    shipx,d2
  1916.     sub.w    #4,d2
  1917.     cmp.w    d0,d2
  1918.     bgt    h4b
  1919.     add.w    #36,d2
  1920.     cmp.w    d0,d2
  1921.     blt    h4b
  1922.     neg    hotyvel
  1923.     bra    ball4
  1924. h4b:
  1925.     cmpi.w    #26,d0
  1926.     blt    hh4
  1927.     cmpi.w    #198,d0
  1928.     blt    h4c
  1929. hh4:    neg    hotyvel
  1930.     bra    ball4
  1931. h4c:    bra    mathover
  1932.  
  1933. hotxvel:    blk.w    1,0
  1934. hotyvel:    blk.w    1,0
  1935. hootx:        blk.w    1,0
  1936. hooty:        blk.w    1,0
  1937.  
  1938. *******************************
  1939. pa:    equ    $ff8240
  1940. amidead:
  1941.     tst.w    hesdead
  1942.     bmi    adback
  1943.     bsr    deadboom
  1944.     bsr    head
  1945.     bra    amd3
  1946. amd1:    move.w    #13,d0
  1947.     move.l    pa,a0
  1948.     move.l    #boomcols,a1
  1949. amd2:    move.w    (a1)+,pa
  1950.     move.w    #50000,d7
  1951.     bsr    delay
  1952.     dbf    d0,amd2
  1953. amd3:    subq.w    #1,ships
  1954.     cmpi.w    #0,ships
  1955.     ble    alldead
  1956.     bsr    fadeout
  1957.     move.w    #-1,hesdead
  1958.     move.w    #1,dopr
  1959.         move.w  #-1,byebye
  1960.         move.w  #-1,bigflg
  1961.         move.w  #-1,shooting
  1962.     move.w    #-1,attacker
  1963.     move.w    #-1,battacker
  1964.     bsr    copyintoboth
  1965.     bsr    putfirst
  1966.     bsr    copyscr
  1967.     bsr    flip_scr
  1968.     bsr    copyscr
  1969.     bsr    fadein
  1970.     bsr    pregrow
  1971.     tst.w    remember
  1972.     bmi    amd4
  1973.     move.w    #1,bigavail
  1974. amd4:
  1975.     move.w    #-1,remember
  1976.     rts
  1977.  
  1978. adback:    rts
  1979.  
  1980. alldead:
  1981.     jmp ftf
  1982.  
  1983. delay:    dbf    d7,delay
  1984.     rts
  1985.  
  1986. *13328
  1987. head:
  1988.     move.l    #appear1,a1
  1989.     bsr    putheads
  1990.     bsr    copyscr
  1991.     bsr    flip_scr
  1992.     move.w    hd,d7
  1993.     bsr    delay
  1994.  
  1995.     move.l    #appear2,a1
  1996.     bsr    putheads
  1997.     bsr    copyscr
  1998.     bsr    flip_scr
  1999.     move.w    hd,d7
  2000.     bsr    delay
  2001.  
  2002.     move.l    #appear3,a1
  2003.     bsr    putheads
  2004.     bsr    copyscr
  2005.     bsr    flip_scr
  2006.     move.w    hd,d7
  2007.     bsr    delay
  2008.  
  2009.     move.l    #appear4,a1
  2010.     bsr    putheads
  2011.     bsr    copyscr
  2012.     bsr    flip_scr
  2013.     move.w    hd,d7
  2014.     bsr    delay
  2015.  
  2016.     move.l    #appear5,a1
  2017.     bsr    putheads
  2018.     bsr    copyscr
  2019.     bsr    flip_scr
  2020.     move.w    hd,d7
  2021.     bsr    delay
  2022.  
  2023.     move.l    #appear6,a1
  2024.     bsr    putheads
  2025.     bsr    copyscr
  2026.     bsr    flip_scr
  2027.     move.w    hd,d7
  2028.     bsr    delay
  2029.  
  2030.     move.l    #appear7,a1
  2031.     bsr    putheads
  2032.     bsr    copyscr
  2033.     bsr    flip_scr
  2034.     move.w    hd,d7
  2035.     bsr    delay
  2036.  
  2037.     move.l    #face1,a1
  2038.     bsr    putheads
  2039.     bsr    copyscr
  2040.     bsr    flip_scr
  2041.     move.w    hd,d7
  2042.     bsr    delay
  2043. mhlaugh:
  2044.     bsr    laugh
  2045.     move.w    #10,d7
  2046. ml:
  2047.     move.w    d7,-(sp)
  2048.     bsr    headani
  2049.     bsr    putheads
  2050.     bsr    copyscr
  2051.     bsr    flip_scr
  2052.     move.w    #50000,d7
  2053.     bsr    delay
  2054.     move.w    (sp)+,d7
  2055.     dbf    d7,ml        
  2056.     rts
  2057.  
  2058.  
  2059.  
  2060.  
  2061. headani:
  2062.     move.l    #0,d0
  2063.     move.w    hdani,d0
  2064.     mulu    #4,d0
  2065.     lea    headlist,a0
  2066.     move.l    (a0,d0.w),a1
  2067.     addq.w    #1,hdani
  2068.     cmpi.w    #3,hdani
  2069.     blt    hl
  2070.     move.w    #0,hdani
  2071. hl:
  2072.     rts
  2073.  
  2074. headlist:
  2075.     dc.l    face1,face2,face3
  2076.     dc.l    face4
  2077.  
  2078. hdani:    blk.w    1,0
  2079. hd:    blk.w    1,40000
  2080. *****************************************
  2081. *    expects a1 to have ad of sprite    *
  2082. *****************************************
  2083. putheads:
  2084.     move.l    screen3,a0
  2085.     add.l    #13328,a0
  2086.     move.w    #31,d0
  2087. ph:
  2088.     move.l    (a1)+,(a0)+
  2089.     move.l    (a1)+,(a0)+
  2090.     move.l    (a1)+,(a0)+
  2091.     move.l    (a1)+,(a0)+
  2092.     add.l    #144,a0
  2093.     dbf    d0,ph
  2094.     rts
  2095.  
  2096. deadboom:
  2097.     bsr    boom
  2098.     move.w    #-1,bigavail
  2099.     tst.w    whsp
  2100.     bne    db1
  2101.     move.w    shipx,bl1x
  2102.     move.w    shipy,bl1y
  2103.     move.w    shipx,bl2x
  2104.     move.w    shipy,bl2y
  2105.     move.w    shipx,bl3x
  2106.     move.w    shipy,bl3y
  2107.     addq.w    #8,bl3x
  2108.     move.w    #20,d0
  2109. dba0:
  2110.     move.w    d0,-(sp)
  2111.     bsr    copyscr
  2112.     add.w    #-2,bl1x
  2113.     move.w  bl1x,spblock    ;\
  2114.     add.w    #-2,bl1y
  2115.         move.w  bl1y,spblock+2
  2116.         move.w  #10,spblock+4
  2117.         move.w  #1,spblock+6
  2118.         move.l  #bl1s1,spblock+8
  2119.         move.l  #gtemp,spblock+12
  2120.         move.w  #1,spblock+26
  2121.         move.l  #gmask,spblock+38
  2122.     bsr    shotsp
  2123.  
  2124.     add.w    #0,bl2x
  2125.     move.w  bl2x,spblock    ;\
  2126.     add.w    #-3,bl2y
  2127.         move.w  bl2y,spblock+2
  2128.         move.w  #9,spblock+4
  2129.         move.w  #1,spblock+6
  2130.         move.l  #bl1s2,spblock+8
  2131.         move.l  #gtemp,spblock+12
  2132.         move.w  #1,spblock+26
  2133.         move.l  #gmask,spblock+38
  2134.     bsr    shotsp
  2135.  
  2136.  
  2137.     add.w    #2,bl3x
  2138.     move.w  bl3x,spblock    ;\
  2139.     add.w    #-2,bl3y
  2140.         move.w  bl3y,spblock+2
  2141.         move.w  #10,spblock+4
  2142.         move.w  #1,spblock+6
  2143.         move.l  #bl1s3,spblock+8
  2144.         move.l  #gtemp,spblock+12
  2145.         move.w  #1,spblock+26
  2146.         move.l  #gmask,spblock+38
  2147.     bsr    shotsp
  2148.     bsr    flip_scr
  2149.     move.w    (sp)+,d0
  2150.     dbf    d0,dba0
  2151.     rts
  2152.  
  2153. db1:
  2154.     cmpi.w    #1,whsp
  2155.     bne    db2
  2156.     move.w    shipx,bl1x
  2157.     move.w    shipy,bl1y
  2158.     move.w    shipx,bl2x
  2159.     move.w    shipy,bl2y
  2160.     move.w    shipx,bl3x
  2161.     move.w    shipy,bl3y
  2162.     addq.w    #8,bl3y    
  2163.     move.w    #20,d0
  2164. dba1:
  2165.     move.w    d0,-(sp)
  2166.     bsr    copyscr
  2167.     add.w    #2,bl1x
  2168.     move.w  bl1x,spblock    ;\
  2169.     add.w    #-2,bl1y
  2170.         move.w  bl1y,spblock+2
  2171.         move.w  #7,spblock+4
  2172.         move.w  #1,spblock+6
  2173.         move.l  #bl4s1,spblock+8
  2174.         move.l  #gtemp,spblock+12
  2175.         move.w  #1,spblock+26
  2176.         move.l  #gmask,spblock+38
  2177.     bsr    shotsp
  2178.  
  2179.     add.w    #3,bl2x
  2180.     move.w  bl2x,spblock    ;\
  2181.     add.w    #0,bl2y
  2182.         move.w  bl2y,spblock+2
  2183.         move.w  #16,spblock+4
  2184.         move.w  #1,spblock+6
  2185.         move.l  #bl4s2,spblock+8
  2186.         move.l  #gtemp,spblock+12
  2187.         move.w  #1,spblock+26
  2188.         move.l  #gmask,spblock+38
  2189.     bsr    shotsp
  2190.  
  2191.  
  2192.     add.w    #2,bl3x
  2193.     move.w  bl3x,spblock    ;\
  2194.     add.w    #2,bl3y
  2195.         move.w  bl3y,spblock+2
  2196.         move.w  #7,spblock+4
  2197.         move.w  #1,spblock+6
  2198.         move.l  #bl4s3,spblock+8
  2199.         move.l  #gtemp,spblock+12
  2200.         move.w  #1,spblock+26
  2201.         move.l  #gmask,spblock+38
  2202.     bsr    shotsp
  2203.     bsr    flip_scr
  2204.     move.w    (sp)+,d0
  2205.     dbf    d0,dba1
  2206.     rts
  2207.  
  2208. db2:
  2209.     cmpi.w    #2,whsp
  2210.     bne    db3
  2211.     move.w    shipx,bl1x
  2212.     move.w    shipy,bl1y
  2213.     move.w    shipx,bl2x
  2214.     move.w    shipy,bl2y
  2215.     move.w    shipx,bl3x
  2216.     move.w    shipy,bl3y
  2217.     add.w    #16,bl1x
  2218.     add.w    #16,bl2x
  2219.     add.w    #24,bl3x
  2220.     
  2221.     move.w    #20,d0
  2222. dba2:
  2223.     move.w    d0,-(sp)
  2224.     bsr    copyscr
  2225.     add.w    #2,bl1x
  2226.     move.w  bl1x,spblock    ;\
  2227.     add.w    #2,bl1y
  2228.         move.w  bl1y,spblock+2
  2229.         move.w  #10,spblock+4
  2230.         move.w  #1,spblock+6
  2231.         move.l  #bl3s3,spblock+8
  2232.         move.l  #gtemp,spblock+12
  2233.         move.w  #1,spblock+26
  2234.         move.l  #gmask,spblock+38
  2235.     bsr    shotsp
  2236.  
  2237.     add.w    #0,bl2x
  2238.     move.w  bl2x,spblock    ;\
  2239.     add.w    #3,bl2y
  2240.         move.w  bl2y,spblock+2
  2241.         move.w  #9,spblock+4
  2242.         move.w  #1,spblock+6
  2243.         move.l  #bl3s2,spblock+8
  2244.         move.l  #gtemp,spblock+12
  2245.         move.w  #1,spblock+26
  2246.         move.l  #gmask,spblock+38
  2247.     bsr    shotsp
  2248.  
  2249.     add.w    #-2,bl3x
  2250.     move.w  bl3x,spblock    ;\
  2251.     add.w    #2,bl3y
  2252.         move.w  bl3y,spblock+2
  2253.         move.w  #10,spblock+4
  2254.         move.w  #1,spblock+6
  2255.         move.l  #bl3s1,spblock+8
  2256.         move.l  #gtemp,spblock+12
  2257.         move.w  #1,spblock+26
  2258.         move.l  #gmask,spblock+38
  2259.     bsr    shotsp
  2260.     bsr    flip_scr
  2261.     move.w    (sp)+,d0
  2262.     dbf    d0,dba2
  2263.     rts
  2264.  
  2265. db3:
  2266.     cmpi.w    #3,whsp
  2267.     bne    db4
  2268.     move.w    shipx,bl1x
  2269.     move.w    shipy,bl1y
  2270.     move.w    shipx,bl2x
  2271.     move.w    shipy,bl2y
  2272.     move.w    shipx,bl3x
  2273.     move.w    shipy,bl3y
  2274.     add.w    #8,bl1y
  2275.     add.w    #8,bl2y
  2276.     add.w    #16,bl3y
  2277.     sub.w    #5,bl1x
  2278.     sub.w    #5,bl2x
  2279.     sub.w    #5,bl3x
  2280.     move.w    #20,d0
  2281. dba3:
  2282.     move.w    d0,-(sp)
  2283.     bsr    copyscr
  2284.     add.w    #-2,bl1x
  2285.     move.w  bl1x,spblock    ;\
  2286.     add.w    #-2,bl1y
  2287.         move.w  bl1y,spblock+2
  2288.         move.w  #7,spblock+4
  2289.         move.w  #1,spblock+6
  2290.         move.l  #bl2s1,spblock+8
  2291.         move.l  #gtemp,spblock+12
  2292.         move.w  #1,spblock+26
  2293.         move.l  #gmask,spblock+38
  2294.     bsr    shotsp
  2295.  
  2296.     add.w    #-3,bl2x
  2297.     move.w  bl2x,spblock    ;\
  2298.     add.w    #0,bl2y
  2299.         move.w  bl2y,spblock+2
  2300.         move.w  #16,spblock+4
  2301.         move.w  #1,spblock+6
  2302.         move.l  #bl2s2,spblock+8
  2303.         move.l  #gtemp,spblock+12
  2304.         move.w  #1,spblock+26
  2305.         move.l  #gmask,spblock+38
  2306.     bsr    shotsp
  2307.  
  2308.     add.w    #-2,bl3x
  2309.     move.w  bl3x,spblock    ;\
  2310.     add.w    #2,bl3y
  2311.         move.w  bl3y,spblock+2
  2312.         move.w  #7,spblock+4
  2313.         move.w  #1,spblock+6
  2314.         move.l  #bl2s3,spblock+8
  2315.         move.l  #gtemp,spblock+12
  2316.         move.w  #1,spblock+26
  2317.         move.l  #gmask,spblock+38
  2318.     bsr    shotsp
  2319.     bsr    flip_scr
  2320.     move.w    (sp)+,d0
  2321.     dbf    d0,dba3
  2322.     rts
  2323.  
  2324. db4:    rts
  2325.  
  2326. hesdead:    blk.w    1,-1
  2327. bl1x:    blk.w    1,0
  2328. bl1y:    blk.w    1,0
  2329. bl2x:    blk.w    1,0
  2330. bl2y:    blk.w    1,0
  2331. bl3x:    blk.w    1,0
  2332. bl3y:    blk.w    1,0
  2333.  
  2334. ********************************************************
  2335. *       Now for some fire power
  2336. *       this will be the standard shot
  2337. ********************************************************
  2338. shoot:
  2339.         tst.w   shooting
  2340.         bmi     newshot
  2341. normshot:
  2342.         cmpi.w  #1,shooting
  2343.         bne     bigshoot
  2344.         move.l  ptsin,a0
  2345.         move.w  shootx,d0
  2346.         add.w   shotxvel,d0
  2347.         move.w  d0,(a0)
  2348.         move.w  d0,shootx
  2349.         move.w  shooty,d0
  2350.         add.w   shotyvel,d0
  2351.         move.w  d0,2(a0)
  2352.         move.w  d0,shooty
  2353.     bra    fitit
  2354. nsb:    dc.w    getpix
  2355.         tst.w   d0
  2356.         bne     hitablock
  2357.     move.w    shootx,pixelx
  2358.     move.w    shooty,pixely
  2359.     move.w    #1,pixelcolor
  2360.     bsr    myplot
  2361.     addq.w    #1,pixely
  2362.     bsr    myplot
  2363. ns:     rts
  2364.  
  2365. bigshoot:
  2366.     cmpi.w    #2,shooting
  2367.     bne    noshoot
  2368.     move.w    shotxvel,d0
  2369.     add.w    d0,shootx
  2370.     move.w  shootx,spblock
  2371.     move.w    shotyvel,d0
  2372.     add.w    d0,shooty
  2373.         move.w  shooty,spblock+2
  2374.         move.w  sh,spblock+4
  2375.         move.w  sw,spblock+6
  2376.         move.l  stype,spblock+8
  2377.         move.l  #gtemp,spblock+12
  2378.         move.w  #1,spblock+26
  2379.         move.l  #gmask,spblock+38
  2380.     bsr    bfitit
  2381.     tst.w    d7
  2382.     bmi    noshoot
  2383.     bsr    shotsp
  2384.     move.l    ptsin,a0
  2385.     move.w    shootx,d0
  2386.     move.w    shooty,d1
  2387.     add.w    bigx,d0
  2388.     add.w    bigy,d1
  2389.     move.w    d0,(a0)
  2390.     move.w    d1,2(a0)
  2391.     dc.w    getpix
  2392.     tst.w    d0
  2393.     bne    hitablockb
  2394. noshoot:
  2395.     rts
  2396.  
  2397. noshoot2:
  2398.     move.w    #-1,shooting
  2399.         rts
  2400.  
  2401.  
  2402. gtemp:    blk.w    200,0
  2403. spblock:    blk.w    50,0
  2404. gmask:    blk.w    200,0
  2405. stype:    blk.l    1,0
  2406. sh:    blk.w    1,0
  2407. sw:    blk.w    1,0
  2408. bigx:    blk.w    1,0
  2409. bigy:    blk.w    1,0
  2410. bigcount:    blk.w    1,0
  2411.  
  2412.     
  2413. newshot:
  2414.         cmpi.w  #1,buttondat
  2415.         bne     newshot2
  2416.     bsr    litshot
  2417.         move.w  shipx,d0
  2418.         move.w  shipy,d1
  2419.         tst.w   whsp
  2420.         bne     ns1
  2421.         add.w   #15,d0
  2422.         subq.w  #2,d1
  2423.         move.w  #0,shotxvel
  2424.         move.w  #-6,shotyvel
  2425.         bra     nsback
  2426. ns1:
  2427.         cmpi.w  #1,whsp
  2428.         bne     ns2
  2429.         add.w   #15,d1
  2430.         add.w   #10,d0
  2431.         move.w  #6,shotxvel
  2432.         move.w  #0,shotyvel
  2433.         bra     nsback
  2434. ns2:
  2435.         cmpi.w  #2,whsp
  2436.         bne     ns3
  2437.         add.w   #15,d0
  2438.         add.w   #12,d1
  2439.         move.w  #0,shotxvel
  2440.         move.w  #6,shotyvel
  2441.         bra     nsback
  2442. ns3:
  2443.         subq.w  #2,d0
  2444.         add.w   #15,d1  
  2445.         move.w  #-6,shotxvel
  2446.         move.w  #0,shotyvel
  2447. nsback: move.w  d0,shootx
  2448.         move.w  d1,shooty
  2449.         move.w  #1,shooting     ;denote that it is a normal shot
  2450.         rts
  2451.  
  2452.  
  2453. newshot2:
  2454.     tst.w    bigavail
  2455.     bmi    shootback2
  2456.         cmpi.w  #2,buttondat
  2457.         bne     shootback2
  2458.     
  2459. ns2a:
  2460.         cmpi.w  #2,buttondat
  2461.         bne     dobis
  2462.     addq.w    #2,strength
  2463.     bsr    copyscr
  2464.         bsr     smallgrow
  2465.     bsr    putsp
  2466.     bsr     bbani
  2467.         bsr     brainy
  2468.         bsr     animboom
  2469.     bsr    dopanel
  2470.     bsr    attack
  2471.     bsr    battack
  2472.         bsr     flip_scr
  2473.     bra    ns2a
  2474.  
  2475.  
  2476. dobis:
  2477.     bsr    bigshot
  2478.     move.l    #0,d0
  2479.     move.w    strength,d0
  2480.     divu    #10,d0
  2481.     move.w    d0,bigcount
  2482.     add.w    d0,score
  2483.     move.w    #1,dopr
  2484.     move.w    #0,strength
  2485.         move.w  shipx,d0
  2486.         move.w  shipy,d1
  2487.         tst.w   whsp
  2488.         bne     nns1
  2489.     move.l    #upshot,stype
  2490.     move.w    #1,sw
  2491.     move.w    #$d,sh
  2492.         add.w   #13,d0
  2493.         sub.w   #4,d1
  2494.     move.w    #2,bigx
  2495.     move.w    #-1,bigy
  2496.         move.w  #0,shotxvel
  2497.         move.w  #-6,shotyvel
  2498.         bra     shootback
  2499. nns1:
  2500.         cmpi.w  #1,whsp
  2501.         bne     nns2
  2502.     move.l    #rightshot,stype
  2503.     move.w    #1,sw
  2504.     move.w    #5,sh
  2505.         add.w   #13,d1
  2506.         add.w   #10,d0
  2507.     move.w    #$e,bigx
  2508.     move.w    #2,bigy
  2509.         move.w  #6,shotxvel
  2510.         move.w  #0,shotyvel
  2511.         bra     shootback
  2512. nns2:
  2513.         cmpi.w  #2,whsp
  2514.         bne     nns3
  2515.     move.l    #downshot,stype
  2516.     move.w    #1,sw
  2517.     move.w    #$d,sh
  2518.         add.w   #13,d0
  2519.         add.w   #12,d1
  2520.     move.w    #2,bigx
  2521.     move.w    #$e,bigy
  2522.         move.w  #0,shotxvel
  2523.         move.w  #6,shotyvel
  2524.         bra     shootback
  2525. nns3:
  2526.     move.l    #leftshot,stype
  2527.     move.w    #1,sw
  2528.     move.w    #5,sh
  2529.         subq.w  #3,d0
  2530.         add.w   #13,d1  
  2531.     move.w    #-1,bigx
  2532.     move.w    #2,bigy
  2533.         move.w  #-6,shotxvel
  2534.         move.w  #0,shotyvel
  2535. shootback:
  2536.     move.w  d0,shootx
  2537.         move.w  d1,shooty
  2538.         move.w  #2,shooting     ;denote that it is a normal shot
  2539.         rts
  2540.  
  2541. shootback2:
  2542.     rts
  2543.  
  2544. ******************************************************
  2545. shoot2:
  2546.         tst.w   shooting
  2547.         bmi     newshots
  2548.  
  2549. normshot2:
  2550.         move.l  ptsin,a0
  2551.         move.w  shootx,d0
  2552.         add.w   shotxvel,d0
  2553.         move.w  d0,(a0)
  2554.         move.w  d0,shootx
  2555.         move.w  shooty,d0
  2556.         add.w   shotyvel,d0
  2557.         move.w  d0,2(a0)
  2558.         move.w  d0,shooty
  2559.     bra    gfitit
  2560. gnsb:   dc.w    getpix
  2561.         cmpi.w  #14,d0
  2562.         bge     itsahit
  2563.     move.w    shootx,pixelx
  2564.     move.w    shooty,pixely
  2565.     move.w    #1,pixelcolor
  2566.     bsr    myplot
  2567.     addq.w    #1,pixely
  2568.     bsr    myplot
  2569.  
  2570. gns:    rts
  2571.  
  2572.  
  2573.  
  2574.  
  2575. newshots:
  2576.         cmpi.w  #1,buttondat
  2577.         bne     newshots2
  2578.     bsr    litshot
  2579.         move.w  shipx,d0
  2580.         move.w  shipy,d1
  2581.         add.w   #15,d0
  2582.         subq.w  #2,d1
  2583.         move.w  #0,shotxvel
  2584.         move.w  #-6,shotyvel
  2585. gnsback:
  2586.     move.w  d0,shootx
  2587.         move.w  d1,shooty
  2588.         move.w  #1,shooting     ;denote that it is a normal shot
  2589.         rts
  2590.  
  2591. newshots2:
  2592.     rts
  2593.  
  2594.  
  2595.  
  2596. gfitit:
  2597.     cmpi.w    #5,shooty
  2598.     bgt    gnsb
  2599.     move.w    #-1,shooting
  2600.     bra    gns
  2601.  
  2602. *************************************************
  2603. *    the old have I hit a bubble routine    *
  2604. *************************************************
  2605. itsahit:
  2606. *    cmpi.w    #14,d0
  2607. *    blt    itsahitb
  2608.     move.w    #-1,shooting
  2609.  
  2610.     move.w    bub1x,d0
  2611.     move.w    bub1y,d1
  2612.     lea    b1,a0        
  2613.     bsr    chkit
  2614.     move.w    bub2x,d0
  2615.     move.w    bub2y,d1
  2616.     lea    b2,a0        
  2617.     bsr    chkit
  2618.     move.w    bub3x,d0
  2619.     move.w    bub3y,d1
  2620.     lea    b3,a0        
  2621.     bsr    chkit
  2622.     move.w    bub4x,d0
  2623.     move.w    bub4y,d1
  2624.     lea    b4,a0        
  2625.     bsr    chkit
  2626.     move.w    bub5x,d0
  2627.     move.w    bub5y,d1
  2628.     lea    b5,a0        
  2629.     bsr    chkit
  2630.     move.w    bub6x,d0
  2631.     move.w    bub6y,d1
  2632.     lea    b6,a0        
  2633.     bsr    chkit
  2634.     move.w    bub7x,d0
  2635.     move.w    bub7y,d1
  2636.     lea    b7,a0        
  2637.     bsr    chkit
  2638.     bra    gns
  2639.     rts
  2640.  
  2641.  
  2642. chkit:
  2643.     move.w  d0,spblock
  2644.         move.w  d1,spblock+2
  2645.     cmp.w    shootx,d0
  2646.     blt    chkit2
  2647.     rts
  2648. chkit2:
  2649.     add.w    #16,d0
  2650.     cmp.w    shootx,d0
  2651.     bgt    chkit3
  2652.     rts
  2653. chkit3:
  2654.     cmp.w    shooty,d1
  2655.     blt    chkit4
  2656.     rts
  2657. chkit4:
  2658.     add.w    #16,d1
  2659.     cmp.w    shooty,d1
  2660.     bgt    chkit5
  2661.     rts
  2662. chkit5:
  2663.     move.w    #-1,(a0)
  2664.     bsr    boom
  2665.     addq.w    #1,ballhits
  2666.     add.w    #10,score
  2667.     move.w    #1,dopr
  2668.  
  2669.         move.w  #16,spblock+4
  2670.         move.w  #1,spblock+6
  2671.         move.l  #gtemp,spblock+12
  2672.         move.w  #1,spblock+26
  2673.         move.l  #gmask,spblock+38
  2674.     move.l    #pop,spblock+8
  2675.     move.l    #b1,a0
  2676.     bsr    shotsp
  2677.     rts
  2678.  
  2679.  
  2680. itsahitb:
  2681.     bra    gns
  2682.  
  2683. fitit:
  2684.         cmpi.w  #94,shootx
  2685.         blt     fititback
  2686.         cmpi.w  #82,shooty
  2687.         blt     fititback
  2688.         cmpi.w  #128,shootx
  2689.         bgt     fititback
  2690.         cmpi.w  #114,shooty
  2691.         bgt     fititback
  2692.         move.w  #-1,shooting
  2693.     addq.w    #1,brhits
  2694.     addq.w    #8,score
  2695.     move.w    #1,dopr
  2696.     bra    ns
  2697.  
  2698. fititback:
  2699.         cmpi.w  #12,shootx
  2700.         blt     fititback2
  2701.         cmpi.w  #12,shooty
  2702.         blt     fititback2
  2703.         cmpi.w  #209,shootx
  2704.         bgt     fititback2
  2705.         cmpi.w  #185,shooty
  2706.         bgt     fititback2
  2707.         bra    nsb
  2708. fititback2:
  2709.         move.w  #-1,shooting
  2710.         bra    ns
  2711.  
  2712.  
  2713. bfitit:
  2714.     move.w    shootx,d0
  2715.     move.w    shooty,d1
  2716.     add.w    bigx,d0
  2717.     add.w    bigy,d1
  2718.  
  2719.         cmpi.w  #94,d0
  2720.         blt     bfititback
  2721.         cmpi.w  #82,d1
  2722.         blt     bfititback
  2723.         cmpi.w  #128,d0
  2724.         bgt     bfititback
  2725.         cmpi.w  #116,d1
  2726.         bgt     bfititback
  2727.         move.w  #-1,shooting
  2728.     addq.w    #1,brhits
  2729.     addq.w    #8,score
  2730.     move.w    #1,dopr
  2731.     move.w    #-1,d7
  2732.     rts
  2733.  
  2734. bfititback:
  2735.         cmpi.w  #12,d0
  2736.         blt     bfititback2
  2737.         cmpi.w  #12,d1
  2738.         blt     bfititback2
  2739.         cmpi.w  #209,d0
  2740.         bgt     bfititback2
  2741.         cmpi.w  #185,d1
  2742.         bgt     bfititback2
  2743.         rts
  2744. bfititback2:
  2745.         move.w  #-1,shooting
  2746.         rts
  2747.  
  2748. strength:    blk.w    1,0
  2749. ********************************************************
  2750. dopanel:
  2751.     cmpi.w    #75,strength
  2752.     blt    okay
  2753.     move.w    #75,strength
  2754. okay:    move.l    hiden,a0
  2755.     add.l    #29712,a0
  2756.     lea    panel,a1
  2757.  
  2758.     move.l    (a1)+,(a0)+
  2759.     move.l    (a1)+,(a0)+
  2760.     move.l    (a1)+,(a0)+
  2761.     move.l    (a1)+,(a0)+
  2762.     move.l    (a1)+,(a0)+
  2763.     move.l    (a1)+,(a0)+
  2764.     move.l    (a1)+,(a0)+
  2765.     move.l    (a1)+,(a0)+
  2766.     move.l    (a1)+,(a0)+
  2767.     move.l    (a1)+,(a0)+
  2768.     move.l    (a1)+,(a0)+
  2769.     move.l    (a1)+,(a0)+
  2770.     add.l    #112,a0
  2771.     move.l    (a1)+,(a0)+
  2772.     move.l    (a1)+,(a0)+
  2773.     move.l    (a1)+,(a0)+
  2774.     move.l    (a1)+,(a0)+
  2775.     move.l    (a1)+,(a0)+
  2776.     move.l    (a1)+,(a0)+
  2777.     move.l    (a1)+,(a0)+
  2778.     move.l    (a1)+,(a0)+
  2779.     move.l    (a1)+,(a0)+
  2780.     move.l    (a1)+,(a0)+
  2781.     move.l    (a1)+,(a0)+
  2782.     move.l    (a1)+,(a0)+
  2783.  
  2784.     move.l    #0,d0
  2785.     move.w    strength,d0
  2786. *    divu    #2,d0
  2787.     add.w    #235,d0
  2788.     move.l    linepar,a0
  2789.     move.w    d0,42(a0)
  2790.     move.w    #235,38(a0)
  2791.     move.w    #185,40(a0)
  2792.     move.w    #0,50(a0)    ;line pattern
  2793.     move.l    #patmsk,46(a0)
  2794.     move.w    #1,24(a0)
  2795.     move.w    #0,26(a0)
  2796.     move.w    #1,28(a0)
  2797.     move.w    #1,30(a0)
  2798.     move.w    #0,36(a0)
  2799.     dc.w    $a004
  2800.     move.l    linepar,a0
  2801.     move.w    #186,40(a0)
  2802. *    move.w    #0,36(a0)
  2803.     dc.w    $a004
  2804.     rts
  2805.  
  2806. patmsk:    dc.w    $ffff
  2807. **********************************
  2808. hitablock:
  2809.         cmpi.w  #6,d0
  2810.         ble     bigboom
  2811.     addq.w    #1,score
  2812.     move.w    #1,dopr
  2813. hitab:    move.l  #0,d0
  2814.         move.l  #0,d1
  2815.         move.l  #0,d2
  2816.         move.l  #0,d3
  2817.         move.l  ptsin,a6
  2818.         move.l  screen3,a5
  2819.         move.w  0(a6),d0        ;x
  2820.         move.w  2(a6),d1        ;y
  2821.         divu    #8,d1
  2822.         move.w  d1,d3
  2823.         mulu    #8,d3
  2824.         swap    d1
  2825.         cmpi.w  #3,d1
  2826.         bge     ht1
  2827.         subq.w  #5,d3
  2828.         bra     ht2
  2829. ht1:
  2830.         addq.w  #3,d3
  2831. ht2:
  2832.         move.w  d3,2(a6)
  2833.         mulu    #160,d3         ;get ad of start of line
  2834.         divu    #16,d0          ;halve it
  2835.         move.w  d0,d2
  2836.         swap    d0
  2837.         cmpi.w  #$8,d0
  2838.         blt     itseveh
  2839.         add     #1,d3
  2840. itseveh:                
  2841.         mulu    #8,d2
  2842.         add.w   d2,d3
  2843.     move.w    d3,hidbad
  2844.         add.w   d3,a5
  2845.         move.l  a5,blockad
  2846.         move.w  #5,byebye
  2847.         move.w  #-1,shooting
  2848.  
  2849.  
  2850.         move.l  #0,d0
  2851.         move.l  blockad,a5
  2852.         move.w  #7,d0
  2853. sfillh:
  2854.         move.b  #0,(a5)
  2855.     add.l    #2,a5
  2856.         move.b  #0,(a5)
  2857.         add.l   #2,a5
  2858.         move.b  #0,(a5)
  2859.         add.l   #2,a5
  2860.         move.b  #0,(a5)
  2861.         add.l   #2,a5
  2862.         add.l   #152,a5
  2863.         dbf     d0,sfillh
  2864.     addq.w    #1,blockout
  2865. *    cmpi.w    #48,blockout
  2866. *    bge    kb
  2867.     rts
  2868.  
  2869. animboom:
  2870.         tst.w   byebye
  2871.         bmi     aboomback
  2872.         move.l  #0,d0
  2873.     move.l    hiden,a5
  2874.         add.w    hidbad,a5
  2875.         move.l  #animblocks,a6
  2876.         move.w  byebye,d0
  2877.         mulu    #32,d0
  2878.         adda    d0,a6
  2879.         move.w  #7,d0
  2880. sfillht:
  2881.         move.b  (a6)+,(a5)
  2882.         add.l   #2,a5
  2883.         move.b  (a6)+,(a5)
  2884.         add.l   #2,a5
  2885.         move.b  (a6)+,(a5)
  2886.         add.l   #2,a5
  2887.         move.b  (a6)+,(a5)
  2888.         add.l   #2,a5
  2889.         add.l   #152,a5
  2890.         dbf     d0,sfillht
  2891.         sub.w   #1,byebye
  2892.         rts
  2893. aboomback:
  2894.         rts
  2895.  
  2896. hidbad:    blk.w    1,0
  2897.  
  2898.  
  2899. **********************************
  2900. hitablock2:
  2901.     cmpi.w    #6,d0
  2902.     ble    hback2
  2903.         move.l  ptsin,a6
  2904.         move.w  0(a6),d0        ;x
  2905.         move.w  2(a6),d1        ;y
  2906.     cmpi.w    #94,d0
  2907.     blt    hbh2
  2908.     cmpi.w    #82,d1
  2909.     blt    hbh2
  2910.     cmpi.w    #128,d0
  2911.     bgt    hbh2
  2912.     cmpi.w    #114,d1
  2913.     bgt    hbh2
  2914.     bra    hback2
  2915. hbh2:    addq.w    #1,score
  2916.     move.w    #1,dopr
  2917.     move.l  #0,d0
  2918.         move.l  #0,d1
  2919.         move.l  #0,d2
  2920.         move.l  #0,d3
  2921.         move.l  ptsin,a6
  2922.         move.l  screen3,a5
  2923.         move.w  0(a6),d0        ;x
  2924.         move.w  2(a6),d1        ;y
  2925.         divu    #8,d1
  2926.         move.w  d1,d3
  2927.         mulu    #8,d3
  2928.         swap    d1
  2929.         cmpi.w  #3,d1
  2930.         bge     ht12
  2931.         subq.w  #5,d3
  2932.         bra     ht22
  2933. ht12:
  2934.         addq.w  #3,d3
  2935. ht22:
  2936.         move.w  d3,2(a6)
  2937.         mulu    #160,d3         ;get ad of start of line
  2938.         divu    #16,d0          ;halve it
  2939.         move.w  d0,d2
  2940.         swap    d0
  2941.         cmpi.w  #$8,d0
  2942.         blt     itseveh2
  2943.         adda    #1,d3
  2944. itseveh2:
  2945.         mulu    #8,d2
  2946.         add.w   d2,d3
  2947. *    move.w    d3,hidbad
  2948.         add.w   d3,a5
  2949.         move.l  a5,blockad
  2950. *        move.w  #5,byebye
  2951.         move.w  #-1,shooting
  2952.  
  2953.         move.l  #0,d0
  2954.         move.l  blockad,a5
  2955.         move.w  #7,d0
  2956. sfillh2:
  2957.         move.b  #0,(a5)
  2958.     add.l    #2,a5
  2959.         move.b  #0,(a5)
  2960.         add.l   #2,a5
  2961.         move.b  #0,(a5)
  2962.         add.l   #2,a5
  2963.         move.b  #0,(a5)
  2964.         add.l   #2,a5
  2965.         add.l   #152,a5
  2966.         dbf     d0,sfillh2
  2967.     addq.w    #1,blockout
  2968. *    cmpi.w    #10,blockout
  2969. *    bge    kb
  2970.     rts
  2971. kb:    move.w    #10,brhits
  2972.     move.w    #1,bigavail
  2973.     move.w    #1,remember
  2974.     rts
  2975. hback2:
  2976.     bra    hbr5
  2977. *    move.w    hotxvel,d1
  2978. *    add.w    d1,hootx
  2979. *    move.w    hotyvel,d1
  2980. *    add.w    d1,hooty
  2981. *    cmpi.w    #3,d0
  2982. *    ble    hbr5
  2983. *    tst.w    hotxvel
  2984. *    bmi    hbr2
  2985. *    move.l    #2,d0
  2986. *    bsr    randomplus
  2987. *    addq.w    #1,d0
  2988. *    move.w    d0,hotxvel
  2989. *    bra    hbr3
  2990. hbr2:    
  2991.     move.l    #2,d0
  2992.     bsr    randomplus
  2993.     neg    d0
  2994.     subq.w    #1,d0
  2995.     move.w    d0,hotxvel
  2996.  
  2997.  
  2998. hbr3:    tst.w    hotyvel
  2999.     bmi    hbr4
  3000.     move.l    #2,d0
  3001.     bsr    randomplus
  3002.     addq.w    #1,d0
  3003.     move.w    d0,hotyvel
  3004.     bra    hbr5
  3005. hbr4:    
  3006.     move.l    #2,d0
  3007.     bsr    randomplus
  3008.     neg    d0
  3009.     subq.w    #1,d0
  3010.     move.w    d0,hotyvel
  3011. hbr5:
  3012.         rts
  3013.  
  3014. blockout:
  3015.     blk.w    1,0
  3016. ********************************
  3017. bigboom:
  3018.     tst.w    break
  3019.     bpl    brno
  3020.     bsr    boom
  3021.         bsr     hitab
  3022.     addq.w    #8,score
  3023.     move.w    #1,dopr
  3024.         move.l  #0,d0
  3025.         move.l  #0,d1
  3026.         move.l  ptsin,a0
  3027.         move.w  0(a0),d0                ;x
  3028.         move.w  2(a0),d1        ;y
  3029.         subq.w  #8,d1
  3030.         mulu    #160,d1
  3031.         divu    #16,d0
  3032.         mulu    #8,d0
  3033.         add.w   d0,d1
  3034.         move.l  screen3,a0
  3035.         add.w   d1,a0
  3036.         move.w  d1,bigoffset
  3037.         move.w  #23,d7
  3038. bbtest:
  3039.         and.w   #0,(a0)+
  3040.         and.w   #0,(a0)+
  3041.         and.w   #0,(a0)+
  3042.         and.w   #0,(a0)+
  3043.         and.w   #$00ff,(a0)+
  3044.         and.w   #$00ff,(a0)+
  3045.         and.w   #$00ff,(a0)+
  3046.         and.w   #$00ff,(a0)+
  3047.         adda    #144,a0
  3048.         dbf     d7,bbtest
  3049.         move.w  #0,bigflg
  3050.         move.w  #-1,byebye
  3051. brno:
  3052.         rts
  3053.  
  3054. bbani:
  3055.         tst.w   bigflg
  3056.         bmi     baniback
  3057.         move.l  #0,d0
  3058.         move.l  #0,d1
  3059.         move.w  bigflg,d0
  3060.         mulu    #384,d0
  3061.         move.w  d0,d1
  3062.         lea     sprite1,a1
  3063.         add.l   d1,a1
  3064.         move.l  hiden,a0
  3065.         add.w   bigoffset,a0
  3066.         move.w  #23,d7
  3067. bbanip:
  3068.         move.w  (a1)+,d0
  3069.         or.w    d0,(a0)+
  3070.         move.w  (a1)+,d0
  3071.         or.w    d0,(a0)+
  3072.         move.w  (a1)+,d0
  3073.         or.w    d0,(a0)+
  3074.         move.w  (a1)+,d0
  3075.         or.w    d0,(a0)+
  3076.         move.w  (a1)+,d0
  3077.         or.w    d0,(a0)+
  3078.         move.w  (a1)+,d0
  3079.         or.w    d0,(a0)+
  3080.         move.w  (a1)+,d0
  3081.         or.w    d0,(a0)+
  3082.         move.w  (a1)+,d0
  3083.         or.w    d0,(a0)+
  3084.         adda    #144,a0
  3085.         dbf     d7,bbanip
  3086.         add.w   #1,bigflg
  3087.         cmpi.w  #7,bigflg
  3088.         bgt     banibover
  3089. baniback:
  3090.         rts
  3091.                 
  3092. banibover:
  3093.         move.w  #-1,bigflg
  3094.         rts
  3095.         
  3096. bigoffset:      blk.l   1,0
  3097. *******************************************************
  3098. hitablockb:
  3099.     move.l  #0,d0
  3100.         move.l  #0,d1
  3101.         move.l  #0,d2
  3102.         move.l  #0,d3
  3103.         move.l  ptsin,a6
  3104.         move.l  screen3,a5
  3105.         move.w  0(a6),d0        ;x
  3106.         move.w  2(a6),d1        ;y
  3107.         divu    #8,d1
  3108.         move.w  d1,d3
  3109.         mulu    #8,d3
  3110.         swap    d1
  3111.         cmpi.w  #3,d1
  3112.         bge     ht1b
  3113.         subq.w  #5,d3
  3114.         bra     ht2b
  3115. ht1b:
  3116.         addq.w  #3,d3
  3117. ht2b:
  3118.         mulu    #160,d3         ;get ad of start of line
  3119.         divu    #16,d0          ;halve it
  3120.         move.w  d0,d2
  3121.         swap    d0
  3122.         cmpi.w  #$8,d0
  3123.         blt     itsevehb
  3124.         adda    #1,a5
  3125. itsevehb:
  3126.         mulu    #8,d2
  3127.         add.w   d2,d3
  3128.         add.w   d3,a5
  3129.         move.l  a5,blockad
  3130.  
  3131.         move.l  #0,d0
  3132.         move.l  blockad,a5
  3133.         move.w  #7,d0
  3134. sfillhb:
  3135.         move.b  #0,(a5)
  3136.         add.l   #2,a5
  3137.         move.b  #0,(a5)
  3138.         add.l   #2,a5
  3139.         move.b  #0,(a5)
  3140.         add.l   #2,a5
  3141.         move.b  #0,(a5)
  3142.         add.l   #2,a5
  3143.         add.l   #152,a5
  3144.         dbf     d0,sfillhb
  3145.         sub.w    #1,bigcount
  3146.     bmi    nomorebig
  3147.         rts
  3148.  
  3149. nomorebig:
  3150.     move.w    #-1,shooting
  3151.     rts
  3152.  
  3153.  
  3154.  
  3155.  
  3156. *******************************************************
  3157. *       byte size grow routine
  3158. *******************************************************
  3159. smallgrow:
  3160.         tst.w   grtimer
  3161.         bpl     growback
  3162.         move.l  #20,d0
  3163.         bsr     randomplus      ;get rnd number between 0-20
  3164. br1:    lea     ring,a0         ;co-ords and side of first ring
  3165.         mulu    #6,d0           ;3 items
  3166.         adda    d0,a0           ;a0 now where i want it
  3167.         move.l  a0,a6
  3168.         move.w  0(a0),d7        ;d7 contains which side of ring
  3169.         move.l  ptsin,a1
  3170.         move.w  2(a0),(a1)
  3171.         move.w  4(a0),2(a1)
  3172.         dc.w    getpix
  3173.         tst.w   d0
  3174.         beq     smallfill
  3175.         tst.w   d7
  3176.         bne     gright
  3177.  
  3178. grup:   move.l  ptsin,a1
  3179.         sub.w   #8,2(a1)
  3180.         dc.w    getpix
  3181.         tst.w   d0
  3182.         beq     smallfill
  3183. uprnd:  move.l  #3,d0
  3184.         bsr     randomplus
  3185.         tst.w   d0
  3186.         bgt     grup1
  3187.         move.l  ptsin,a1
  3188.         sub.w   #8,(a1)
  3189.         dc.w    getpix
  3190.     tst.w    d0
  3191.         beq     smallfill
  3192.         bra     uprnd
  3193.  
  3194. grup1:
  3195.         cmpi.w  #1,d0
  3196.         bne     grup2
  3197.         move.l  ptsin,a1
  3198.         sub.w   #8,2(a1)
  3199.         dc.w    getpix
  3200.         tst.w   d0
  3201.         beq     smallfill
  3202.         bra     uprnd   
  3203.  
  3204. grup2:
  3205.         move.l  ptsin,a1
  3206.         add.w   #8,(a1)
  3207.         dc.w    getpix
  3208.         tst.w   d0
  3209.         beq     smallfill
  3210.         bra     uprnd
  3211.         
  3212. gright:
  3213.         cmpi.w  #1,d7
  3214.         bne     grdown
  3215.         move.l  ptsin,a1
  3216.         add.w   #8,(a1)
  3217.         dc.w    getpix
  3218.         tst.w   d0
  3219.         beq     smallfill
  3220. rirnd:  move.l  #3,d0
  3221.         bsr     randomplus
  3222.         tst.w   d0
  3223.         bgt     grit1
  3224.         move.l  ptsin,a1
  3225.         sub.w   #8,2(a1)
  3226.         dc.w    getpix
  3227.     tst.w    d0
  3228.         beq     smallfill
  3229.         bra     rirnd
  3230.  
  3231. grit1:
  3232.         cmpi.w  #1,d0
  3233.         bne     grit2
  3234.         move.l  ptsin,a1
  3235.         add.w   #8,(a1)
  3236.         dc.w    getpix
  3237.         tst.w   d0
  3238.         beq     smallfill
  3239.         bra     rirnd   
  3240.  
  3241. grit2:
  3242.         move.l  ptsin,a1
  3243.         add.w   #8,2(a1)
  3244.         dc.w    getpix
  3245.         tst.w   d0
  3246.         beq     smallfill
  3247.         bra     rirnd
  3248.  
  3249. grdown:
  3250.         cmpi.w  #2,d7
  3251.         bne     grleft
  3252.         move.l  ptsin,a1
  3253.         add.w   #8,2(a1)
  3254.         dc.w    getpix
  3255.         tst.w   d0
  3256.         beq     smallfill
  3257. dirnd:  move.l  #3,d0
  3258.         bsr     randomplus
  3259.         tst.w   d0
  3260.         bgt     gdown1
  3261.         move.l  ptsin,a1
  3262.         add.w   #8,(a1)
  3263.         dc.w    getpix
  3264.     tst.w    d0
  3265.         beq     smallfill
  3266.         bra     dirnd
  3267.  
  3268. gdown1:
  3269.         cmpi.w  #1,d0
  3270.         bne     gdown2
  3271.         move.l  ptsin,a1
  3272.         add.w   #8,2(a1)
  3273.         dc.w    getpix
  3274.         tst.w   d0
  3275.         beq     smallfill
  3276.         bra     dirnd   
  3277.  
  3278. gdown2:
  3279.         move.l  ptsin,a1
  3280.         sub.w   #8,(a1)
  3281.         dc.w    getpix
  3282.         tst.w   d0
  3283.         beq     smallfill
  3284.         bra     dirnd
  3285.  
  3286. grleft:
  3287.     cmpi.w    #3,d7
  3288.     bne    gnot
  3289.         move.l  ptsin,a1
  3290.         sub.w   #8,(a1)
  3291.         dc.w    getpix
  3292.         tst.w   d0
  3293.         beq     smallfill
  3294. lirnd:  move.l  #3,d0
  3295.         bsr     randomplus
  3296.         tst.w   d0
  3297.         bgt     gleft1
  3298.         move.l  ptsin,a1
  3299.         add.w   #8,2(a1)
  3300.         dc.w    getpix
  3301.     tst.w    d0
  3302.         beq     smallfill
  3303.         bra     lirnd
  3304.  
  3305. gleft1:
  3306.         cmpi.w  #1,d0
  3307.         bne     gleft2
  3308.         move.l  ptsin,a1
  3309.         sub.w   #8,(a1)
  3310.         dc.w    getpix
  3311.         tst.w   d0
  3312.         beq     smallfill
  3313.         bra     lirnd   
  3314.  
  3315. gleft2:
  3316.         move.l  ptsin,a1
  3317.         sub.w   #8,2(a1)
  3318.         dc.w    getpix
  3319.         tst.w   d0
  3320.         beq     smallfill
  3321.         bra     lirnd
  3322.         rts
  3323. gnot:
  3324.     rts
  3325.  
  3326. *********************************************************
  3327. *       New smaller block version
  3328. **********************************************************
  3329. smallfill:
  3330.         move.l  #0,d0
  3331.         move.l  #0,d1
  3332.         move.l  #0,d2
  3333.         move.l  ptsin,a6
  3334.         move.l  screen3,a5
  3335.         move.w  0(a6),d0        ;x
  3336.         move.w  2(a6),d1        ;y
  3337.     bsr    killem
  3338.         mulu    #160,d1         ;get ad of start of line
  3339.         divu    #16,d0          ;halve it
  3340.         move.w  d0,d2
  3341.         swap    d0
  3342.         tst.w   d0
  3343.         beq     itseve
  3344.         adda    #1,a5
  3345.         move.l  #100,d0
  3346.         movem.l d1/d2/a5/a6,-(sp)
  3347.         bsr     randomplus
  3348.         movem.l (sp)+,d1/d2/a5/a6
  3349.         cmpi.w  #5,d0
  3350.         bgt     itseve
  3351.         move.l  #specialb,a6
  3352.         bra     itseve2a
  3353.  
  3354. itseve: move.l  whichblock,a6   
  3355. itseve2a:
  3356.         asl.w   #3,d2
  3357.         add.w   d2,d1
  3358.         add.w   d1,a5
  3359.         move.l  #7,d0
  3360. sfill:
  3361.         move.b  (a6)+,(a5)
  3362.         add.l   #2,a5
  3363.         move.b  (a6)+,(a5)
  3364.         add.l   #2,a5
  3365.         move.b  (a6)+,(a5)
  3366.         add.l   #2,a5
  3367.         move.b  (a6)+,(a5)
  3368.         add.l   #2,a5
  3369.         add.l   #152,a5
  3370.         dbf     d0,sfill
  3371.         move.w  speed,grtimer
  3372. growback:
  3373.         subq.w  #1,grtimer
  3374.         rts
  3375. ********************************
  3376. killem:
  3377.     cmpi.w    #10,d0
  3378.     bgt    k1
  3379.     move.w    #1,hesdead
  3380.     rts
  3381. k1:    cmpi.w    #10,d1
  3382.     bgt    k2
  3383.     move.w    #1,hesdead
  3384.     rts
  3385. k2:    cmpi.w    #214,d0
  3386.     blt    k3
  3387.     move.w    #1,hesdead
  3388.     rts
  3389. k3:    cmpi.w    #187,d1
  3390.     blt    k4
  3391.     move.w    #1,hesdead
  3392.     rts
  3393. k4:    rts
  3394.  
  3395.  
  3396.  
  3397.  
  3398.  
  3399. sfill2:
  3400.         move.l  screen3,a5
  3401.         mulu    #160,d1         ;get ad of start of line
  3402.         divu    #16,d0          ;halve it
  3403.         move.w  d0,d2
  3404.         swap    d0
  3405.         tst.w   d0
  3406.         beq     itseve2
  3407.         adda    #1,a5
  3408. itseve2:                
  3409.         mulu    #8,d2
  3410.         add.w   d2,d1
  3411.         add.w   d1,a5
  3412.         move.l  whichblock,a6
  3413.         move.l  #7,d0
  3414. sfills:
  3415.         move.b  (a6)+,(a5)
  3416.         add.l   #2,a5
  3417.         move.b  (a6)+,(a5)
  3418.         add.l   #2,a5
  3419.         move.b  (a6)+,(a5)
  3420.         add.l   #2,a5
  3421.         move.b  (a6)+,(a5)
  3422.         add.l   #2,a5
  3423.         add.l   #152,a5
  3424.         dbf     d0,sfills
  3425.         rts
  3426.  
  3427. ****************************************************
  3428. *       put the first 2 rings in
  3429. ****************************************************
  3430. putfirst:
  3431.         lea     ring,a0
  3432.         move.w  #19,d7  
  3433. firstring:
  3434.         move.l  #0,d0
  3435.         move.l  #0,d1
  3436.         move.l  #0,d2
  3437.         move.w  (a0)+,d0
  3438.         move.w  (a0)+,d0
  3439.         move.w  (a0)+,d1
  3440.         movem.l d7/a0,-(sp)
  3441.         bsr     sfill2
  3442.         movem.l (sp)+,d7/a0
  3443.         dbf     d7,firstring
  3444.  
  3445.         lea     ring2,a0
  3446.         move.w  #27,d7  
  3447. secring:
  3448.         move.l  #0,d0
  3449.         move.l  #0,d1
  3450.         move.l  #0,d2
  3451.         move.w  (a0)+,d0
  3452.         move.w  (a0)+,d1
  3453.         movem.l d7/a0,-(sp)
  3454.         bsr     sfill2
  3455.         movem.l (sp)+,d7/a0
  3456.         dbf     d7,secring
  3457.         rts
  3458.         
  3459.  
  3460. *************************
  3461. keyboard:
  3462.         move.w  #$ff,-(sp)
  3463.         move.w  #6,-(sp)
  3464.         trap    #1
  3465.         addq.l  #4,sp
  3466.         tst.l   d0
  3467.         beq     keyback
  3468.         swap    d0
  3469. quit:   cmpi.w  #$10,d0
  3470.         bne     aman
  3471.         bra     gem
  3472. aman:   cmpi.w  #57,d0
  3473.         bne     keyback
  3474.         bra     pause
  3475. moveon: cmpi.w  #$0f,d0
  3476.         bne     keyback
  3477.         move.w  #10,brhits
  3478. keyback:rts
  3479. *****************************
  3480. pause:  
  3481.         move.w  #$ff,-(sp)
  3482.         move.w  #6,-(sp)
  3483.         trap    #1
  3484.         addq.l  #4,sp
  3485.         tst.l   d0
  3486.         beq     pause
  3487.         swap    d0
  3488.         cmpi.w  #$1e,d0
  3489.         bne     keyback 
  3490.         bsr     gkey
  3491.         cmpi.w  #$32,d0
  3492.         bne     keyback
  3493.         bsr     gkey
  3494.         cmpi.w  #$1e,d0
  3495.         bne     keyback
  3496.         bsr     gkey
  3497.         cmpi.w  #$31,d0
  3498.         bne     keyback
  3499.         bsr     gkey
  3500.         cmpi.w  #$20,d0
  3501.         bne     keyback
  3502.         bsr     gkey
  3503.         cmpi.w  #$1e,d0
  3504.         bne     keyback
  3505.     move.w    #100,ships
  3506.     move.w    #1,dopr
  3507.     move.w    #1,bigavail
  3508.     bsr    weapons
  3509.     bra    keyback
  3510.  
  3511. gkey:
  3512.         move.w  #$ff,-(sp)
  3513.         move.w  #6,-(sp)
  3514.         trap    #1
  3515.         addq.l  #4,sp
  3516.         tst.l   d0
  3517.         beq     gkey
  3518.         swap    d0
  3519.         rts
  3520. *****************************
  3521. *********************vbli routine to beat the brain************
  3522.  
  3523. brainy:
  3524.     cmpi.w    #8,brhits
  3525.     bge    eb
  3526.         tst.w   brtimer
  3527.         bgt     brdec
  3528.         move.w  lastbr,d0
  3529.         tst.w   d0
  3530.         bgt     lit
  3531. big:    move.w  #31,d1
  3532.         move.l  #bbrain,a0    ;shifted sprite address
  3533.         move.l  screen3,a1       ;absolute screen address to a1
  3534.         addi.l  #13328,a1
  3535. big1:   move.w  #1,d0           ;copy width to d0
  3536. big2:   move.l  (a0)+,(a1)+     ;move all four planes
  3537.         move.l  (a0)+,(a1)+     ;(2 longs = 4 words(planes))
  3538.         dbf     d0,big2         ;repeat width times
  3539.         add.l   #144,a1         ;move pointer to next line
  3540.         dbf     d1,big1         ;repeat height times
  3541.         move.w  #1,lastbr
  3542.         move.w  #5,brtimer
  3543.         rts
  3544. lit:    move.w  #31,d1
  3545.         move.l  #lbrain,a0    ;shifted sprite address
  3546.         move.l  screen3,a1       ;absolute screen address to a1
  3547.         addi.l  #13328,a1
  3548. lit1:   move.w  #1,d0           ;copy width to d0
  3549. lit2:   move.l  (a0)+,(a1)+     ;move all four planes
  3550.         move.l  (a0)+,(a1)+     ;(2 longs = 4 words(planes))
  3551.         dbf     d0,lit2         ;repeat width times
  3552.         add.l   #144,a1         ;move pointer to next line
  3553.         dbf     d1,lit1         ;repeat height times
  3554.         move.w  #0,lastbr
  3555.         move.w  #10,brtimer
  3556.         rts
  3557. brdec:  subi.w  #1,brtimer
  3558. brback: rts
  3559.  
  3560. eb:    move.w  #31,d1
  3561.         move.l  #eyebrain,a0    ;shifted sprite address
  3562.         move.l  screen3,a1       ;absolute screen address to a1
  3563.         addi.l  #13328,a1
  3564. ebig1:    move.w  #1,d0           ;copy width to d0
  3565. ebig2:    move.l  (a0)+,(a1)+     ;move all four planes
  3566.         move.l  (a0)+,(a1)+     ;(2 longs = 4 words(planes))
  3567.         dbf     d0,ebig2         ;repeat width times
  3568.         add.l   #144,a1         ;move pointer to next line
  3569.         dbf     d1,ebig1         ;repeat height times
  3570.     rts
  3571.  
  3572. ******************************************************************
  3573. ************code to determine  x offset *****************
  3574. *               and absolute screen address             *
  3575. *               parameters to pass on stack as follows  *
  3576. *               1-      x of sprite                     *
  3577. *               2-      y of sprite                     *
  3578. *               3-      screen address                  *
  3579. *       paremeters returned are x offset in d0          *
  3580. *       absolute screen address in d2                   *
  3581. *********************************************************
  3582.  
  3583. shotsp:
  3584.         move.l  hiden,spblock+16
  3585.     move.l  #0,d0
  3586.         move.w  spblock,d0       ;put x value in d0
  3587.         divu    #16,d0          ;divide by 16 leaves word boundry in d0
  3588.         move.w  spblock+2,d1     ;put y value in d1
  3589.         mulu    #160,d1         ;gives offset in words of line
  3590.         move.w  d0,d3
  3591.         mulu    #8,d3
  3592.         add     d3,d1           ;gives word to poke sprite
  3593.         move.l  spblock+16,d2    ;put screen address in d2
  3594.         add     d1,d2           ;gives actual screen address for sprite
  3595.         move.l  d2,spblock+20
  3596.         asr.l   #8,d0
  3597.         asr.l   #8,d0           ;leaves x offset in d0          
  3598.         move.w  d0,spblock+24
  3599.  
  3600. *************CODE TO ROTATE A SPRITE IMAGE***********************
  3601. *       parameters to be passed on the stack in order are       *       
  3602. *       1-      x offset from start of word                     *
  3603. *       2-      address of place to put shifted image(tempsp)   *
  3604. *       3-      address of sprite data                          *
  3605. *       4-      height of object in pixels                      *
  3606. *       5-      width of object in words - 1                    *
  3607. *****************************************************************
  3608. shiftimages:
  3609.         move.w  spblock+4,d1        ;height in d1
  3610.         move.w  spblock+24,d2       ;offset to d2
  3611.         subq.w  #1,d1           ;height - 1 = height if count starts at zero
  3612.         subq.w  #1,spblock+6        ;width - 1 = width if count starts at zero
  3613.         move.l  spblock+8,a0        ;object pointer to a0
  3614.         move.l  spblock+12,a1       ;image pointer to a1
  3615. ssi1:    move.w  spblock+6,d0        ;width in d0
  3616.         clr.l   (a1)            ;for each line, the first word of the
  3617.         clr.l   4(a1)           ;image must be cleared
  3618. ssi0:    clr.l   d4              ;make sure that the top halves of these
  3619.         clr.l   d5              ;registers are zeroed out
  3620.         clr.l   d6
  3621.         clr.l   d7
  3622.         move.w  (a0)+,d4        ;load in one word (four planes)
  3623.         move.w  (a0)+,d5        ;to be rotated
  3624.         move.w  (a0)+,d6
  3625.         move.w  (a0)+,d7
  3626.         ror.l   d2,d4           ;rotate all planes by the offset(d2)
  3627.         ror.l   d2,d5
  3628.         ror.l   d2,d6
  3629.         ror.l   d2,d7
  3630.         or.w    d4,(a1)+        ;add low order bits to the high order bits
  3631.         or.w    d5,(a1)+        ;stored by move instructions farther
  3632.         or.w    d6,(a1)+        ;down in this routine
  3633.         or.w    d7,(a1)+
  3634.         swap    d4              ;move high order bits into lower halves
  3635.         swap    d5              ;of the registers
  3636.         swap    d6
  3637.         swap    d7
  3638.         move.w  d4,(a1)         ;save the high orders bits to be ORed
  3639.         move.w  d5,2(a1)        ;in the loop (do not increment a1 because
  3640.         move.w  d6,4(a1)        ;the ORs in the loop must function on
  3641.         move.w  d7,6(a1)        ;the same addresses as these moves.
  3642.         dbf     d0,ssi0          ;repeat width times
  3643.         addq.l  #8,a1           ;new line, move to next word( * 4 planes = 8)
  3644.         dbf     d1,ssi1          ;repeat height times
  3645.         addi.w  #1,spblock+6
  3646. smake_mask:
  3647.         move.w  spblock+4,d1        ;height in d1
  3648.         subq.w  #1,d1           ;height - 1 = height if count starts at zero
  3649.         move.l  spblock+12,a0        ;image pointer to a0
  3650.         move.l  spblock+38,a1       ;mask pointer to a1
  3651. smm1:    move.w  spblock+6,d0        ;width in d0
  3652. smm0:    move.w  (a0)+,d2        ;load first plane of bit image in d2
  3653.         or.w    (a0)+,d2        ;OR it with the 3 other planes
  3654.         or.w    (a0)+,d2
  3655.         or.w    (a0)+,d2
  3656.         move.w  d2,d3           ;store inverse mask in d3 (temporary)
  3657.         swap    d2              ;move inverse mask to top half of register
  3658.         move.w  d3,d2           ;and also in bottom half
  3659.         eor.l   #-1,d2          ;mask no longer inverse
  3660.         move.l  d2,(a1)+        ;store mask in buffer
  3661.         dbf     d0,smm0          ;repeat 'width' times
  3662.         dbf     d1,smm1          ;repeat 'height' times
  3663.  
  3664. *********code to put sprite on screen********************
  3665. *********parameters to be passed on the stack are********
  3666. *********1-     shifted sprite address (tempsp) *********
  3667. *********2-     absolute screen address to put image*****
  3668. *********3-     height in pixels                *********
  3669. *********4-     width in words -1               *********
  3670. sdraw:
  3671.         move.w  spblock+4,d1     ;height to d1
  3672.         subq.w  #1,d1           ;height - 1 = height if count starts at zero
  3673.         move.l  spblock+12,a1    ;image pointer to a1
  3674.         move.l  spblock+38,a2    ;mask pointer to a2
  3675.         move.l  spblock+20,a3    ;screen buffer pointer to a3
  3676. sdi1:    move.w  spblock+6,d0     ;width to d0
  3677.         move.l  spblock+20,a0    ;absolute screen address to a0
  3678. sdi0:    move.l  (a2)+,d3        ;load mask data into d3
  3679.         move.l  (a1)+,d6        ;load screen image into d6 and d7
  3680.         move.l  (a1)+,d7        ;2 words each covers all 4 planes
  3681.         move.l  (a3)+,d4        ;do the same for the background
  3682.         move.l  (a3)+,d5        ;in d4 and d5 (from buffer, not screen)
  3683.         and.l   d3,d4           ;mask background
  3684.         and.l   d3,d5
  3685.         or.l    d6,d4           ;copy image onto background
  3686.         or.l    d7,d5           ;giving final image on top of background
  3687.         move.l  d4,(a0)+        ;copy final image into screen memory
  3688.         move.l  d5,(a0)+
  3689.         dbf     d0,sdi0          ;repeat for 'width' times
  3690.         add.l   #160,spblock+20  ;move to next screen line
  3691.         addi.l  #144,a3
  3692.         dbf     d1,sdi1          ;repeat 'height' times
  3693.     rts
  3694. ************code to determine  x offset *****************
  3695. *               and absolute screen address             *
  3696. *               parameters to pass on stack as follows  *
  3697. *               1-      x of sprite                     *
  3698. *               2-      y of sprite                     *
  3699. *               3-      screen address                  *
  3700. *       paremeters returned are x offset in d0          *
  3701. *       absolute screen address in d2                   *
  3702. *********************************************************
  3703. wship0:    blk.l    1,0
  3704. wship1:    blk.l    1,0
  3705. wship2:    blk.l    1,0
  3706. wship3:    blk.l    1,0
  3707. shipm:    blk.w    500,0
  3708.  
  3709. putsp:
  3710.     move.l    #shipm,pblock+38
  3711.     move.w  mx,d0           ;move value of mouse into d0
  3712.         mulu    #6,d0           ;*6 gives address in array containing
  3713.         move.l  #spxy,a0        ;sprite no. and x,y
  3714.         move.w  (a0,d0),d1      ;puts sprite no. in d1
  3715.         move.w  d1,whsp
  3716.         move.w  2(a0,d0),pblock ;put x pos. in parameter block
  3717.         move.w  2(a0,d0),shipx
  3718.         move.w  4(a0,d0),shipy
  3719.         move.w  4(a0,d0),pblock+2       ;puts y pos. in pblock
  3720.         tst.w   d1
  3721.         bgt    .S best1
  3722.         move.l  wship0,pblock+8
  3723.         move.w  #2,pblock+6
  3724.         move.w  #10,pblock+4
  3725.         move.w  #2,pblock+26
  3726.     move.w    #136,pblock+46
  3727.         bra    .L last
  3728. best1:  cmpi.w  #1,d1
  3729.         bgt    .S best2
  3730.         move.l  wship3,pblock+8
  3731.         move.w  #1,pblock+6
  3732.         move.w  #32,pblock+4
  3733.         move.w  #1,pblock+26
  3734.     move.w    #144,pblock+46
  3735.         bra    .S last
  3736. best2:  cmpi.w  #2,d1
  3737.         bgt    .S best3
  3738.         move.l  wship2,pblock+8
  3739.         move.w  #2,pblock+6
  3740.         move.w  #10,pblock+4
  3741.         move.w  #2,pblock+26
  3742.     move.w    #136,pblock+46
  3743.         bra    last
  3744. best3:  move.l  wship1,pblock+8
  3745.         move.w  #1,pblock+6
  3746.         move.w  #32,pblock+4
  3747.         move.w  #1,pblock+26
  3748.     move.w    #144,pblock+46
  3749. last:   move.l  #tempsp,pblock+12
  3750.     move.l    hiden,pblock+16
  3751.  
  3752. calc:
  3753.         clr.l   d0
  3754.         move.w  pblock,d0       ;put x value in d0
  3755.         divu    #16,d0          ;divide by 16 leaves word boundry in d0
  3756.         move.w  pblock+2,d1     ;put y value in d1
  3757.         mulu    #160,d1         ;gives offset in words of line
  3758.         move.w  d0,d3
  3759.         mulu    #8,d3
  3760.         add     d3,d1           ;gives word to poke sprite
  3761.         move.l  pblock+16,d2    ;put screen address in d2
  3762.         add     d1,d2           ;gives actual screen address for sprite
  3763.         move.l  d2,oldscr
  3764.         move.l  d2,pblock+20
  3765.         asr.l   #8,d0
  3766.         asr.l   #8,d0           ;leaves x offset in d0          
  3767.         move.w  d0,pblock+24
  3768.  
  3769.  
  3770. *************CODE TO ROTATE A SPRITE IMAGE***********************
  3771. *       parameters to be passed on the stack in order are       *       
  3772. *       1-      x offset from start of word                     *
  3773. *       2-      address of place to put shifted image(tempsp)   *
  3774. *       3-      address of sprite data                          *
  3775. *       4-      height of object in pixels                      *
  3776. *       5-      width of object in words - 1                    *
  3777. *****************************************************************
  3778. shiftimage:
  3779.         move.w  pblock+4,d1        ;height in d1
  3780.         move.w  pblock+24,d2       ;offset to d2
  3781.         subq.w  #1,d1           ;height - 1 = height if count starts at zero
  3782.         subq.w  #1,pblock+6        ;width - 1 = width if count starts at zero
  3783.         move.l  pblock+8,a0        ;object pointer to a0
  3784.         move.l  pblock+12,a1       ;image pointer to a1
  3785. si1:    move.w  pblock+6,d0        ;width in d0
  3786.         clr.l   (a1)            ;for each line, the first word of the
  3787.         clr.l   4(a1)           ;image must be cleared
  3788. si0:    clr.l   d4              ;make sure that the top halves of these
  3789.         clr.l   d5              ;registers are zeroed out
  3790.         clr.l   d6
  3791.         clr.l   d7
  3792.         move.w  (a0)+,d4        ;load in one word (four planes)
  3793.         move.w  (a0)+,d5        ;to be rotated
  3794.         move.w  (a0)+,d6
  3795.         move.w  (a0)+,d7
  3796.         ror.l   d2,d4           ;rotate all planes by the offset(d2)
  3797.         ror.l   d2,d5
  3798.         ror.l   d2,d6
  3799.         ror.l   d2,d7
  3800.         or.w    d4,(a1)+        ;add low order bits to the high order bits
  3801.         or.w    d5,(a1)+        ;stored by move instructions farther
  3802.         or.w    d6,(a1)+        ;down in this routine
  3803.         or.w    d7,(a1)+
  3804.         swap    d4              ;move high order bits into lower halves
  3805.         swap    d5              ;of the registers
  3806.         swap    d6
  3807.         swap    d7
  3808.         move.w  d4,(a1)         ;save the high orders bits to be ORed
  3809.         move.w  d5,2(a1)        ;in the loop (do not increment a1 because
  3810.         move.w  d6,4(a1)        ;the ORs in the loop must function on
  3811.         move.w  d7,6(a1)        ;the same addresses as these moves.
  3812.         dbf     d0,si0          ;repeat width times
  3813.         addq.l  #8,a1           ;new line, move to next word( * 4 planes = 8)
  3814.         dbf     d1,si1          ;repeat height times
  3815.         addi.w  #1,pblock+6
  3816. make_mask:
  3817.         move.w  pblock+4,d1        ;height in d1
  3818.         subq.w  #1,d1           ;height - 1 = height if count starts at zero
  3819.         move.l  pblock+12,a0        ;image pointer to a0
  3820.         move.l  pblock+38,a1       ;mask pointer to a1
  3821. mm1:    move.w  pblock+6,d0        ;width in d0
  3822. mm0:    move.w  (a0)+,d2        ;load first plane of bit image in d2
  3823.         or.w    (a0)+,d2        ;OR it with the 3 other planes
  3824.         or.w    (a0)+,d2
  3825.         or.w    (a0)+,d2
  3826.         move.w  d2,d3           ;store inverse mask in d3 (temporary)
  3827.         swap    d2              ;move inverse mask to top half of register
  3828.         move.w  d3,d2           ;and also in bottom half
  3829.         eor.l   #-1,d2          ;mask no longer inverse
  3830.         move.l  d2,(a1)+        ;store mask in buffer
  3831.         dbf     d0,mm0          ;repeat 'width' times
  3832.         dbf     d1,mm1          ;repeat 'height' times
  3833.  
  3834. draw:
  3835.         move.w  pblock+4,d1     ;height to d1
  3836.         subq.w  #1,d1           ;height - 1 = height if count starts at zero
  3837.         move.l  pblock+12,a1    ;image pointer to a1
  3838.         move.l  pblock+38,a2    ;mask pointer to a2
  3839.         move.l  pblock+20,a3    ;screen buffer pointer to a3
  3840. di1:    move.w  pblock+6,d0     ;width to d0
  3841.         move.l  pblock+20,a0    ;absolute screen address to a0
  3842. di0:    move.l  (a2)+,d3        ;load mask data into d3
  3843.         move.l  (a1)+,d6        ;load screen image into d6 and d7
  3844.         move.l  (a1)+,d7        ;2 words each covers all 4 planes
  3845.         move.l  (a3)+,d4        ;do the same for the background
  3846.         move.l  (a3)+,d5        ;in d4 and d5 (from buffer, not screen)
  3847.         and.l   d3,d4           ;mask background
  3848.         and.l   d3,d5
  3849.         or.l    d6,d4           ;copy image onto background
  3850.         or.l    d7,d5           ;giving final image on top of background
  3851.         move.l  d4,(a0)+        ;copy final image into screen memory
  3852.         move.l  d5,(a0)+
  3853.         dbf     d0,di0          ;repeat for 'width' times
  3854.         add.l   #160,pblock+20  ;move to next screen line
  3855.         add.w   pblock+46,a3
  3856.         dbf     d1,di1          ;repeat 'height' times
  3857.     rts
  3858.  
  3859. **********************************
  3860. putnums:
  3861.     tst.w    dopr
  3862.     bmi    pthome
  3863. prtscr: move.l  #scorepos,pos
  3864.         move.w  score,number
  3865.         bsr     prtnum
  3866.     move.w    score,d7
  3867.     cmp.w    emancnt,d7
  3868.     blt    prtships
  3869.     addq.w    #1,ships
  3870.     bsr    reward
  3871.     addi.w    #2000,emancnt
  3872.  
  3873.  
  3874. prtships:
  3875.         move.l  #shippos,pos
  3876.         move.w  ships,number
  3877.         bsr     prtnum
  3878.  
  3879.  
  3880. prtlev: move.l  #levpos,pos
  3881.         move.w  level,number
  3882.         bsr     prtnum
  3883.     subq.w    #1,dopr
  3884. pthome:   
  3885.         rts
  3886.         
  3887.  
  3888. emancnt:    blk.w    1,0
  3889. dopr:    blk.w    1,0
  3890. ***************************************************************************
  3891.  
  3892. *               RETURN TO GEM
  3893.  
  3894. gem:
  3895.     move.w    #$2700,sr
  3896.     move.l    oldvbl1,a0
  3897.     move.l    #0,(a0)
  3898.     jsr    oldmfp
  3899.  
  3900.         move.w  #34,-(sp)
  3901.         trap    #14
  3902.         addq.l  #2,sp
  3903.         move.l  d0,a0
  3904.         move.l  oldmouse,16(a0)
  3905.  
  3906.         move.b  #7,$484
  3907.  
  3908.         move.w  ressave,-(sp)
  3909.         move.l  screen1,-(sp)
  3910.         move.l  screen1,-(sp)
  3911.         move.w  #5,-(sp)
  3912.         trap    #14
  3913.         addi.l  #12,sp
  3914.         
  3915.         move.l  spv_sp,-(SP)    ;Back to user mode
  3916.         move.w  #$20,-(SP)
  3917.         trap    #1
  3918.         addq.l  #6,(SP)
  3919.  
  3920. illegal
  3921.         CLR.W   -(SP)           ;RETURN TO GEM
  3922.    
  3923.         TRAP    #1
  3924.  
  3925. spv_sp: blk.l   1               ;supervisor SP store
  3926.  
  3927.  
  3928. ***************************************************************************
  3929.  
  3930. *               FLIP SCREEN
  3931.  
  3932. *       Flip displayed screen.
  3933.  
  3934. copyscr:
  3935.         move.l  screen3,a0      ;first copy from third to hiden
  3936.         move.l  #199,d0
  3937.         move.l  hiden,a1
  3938. copyit:
  3939.  
  3940.         move.w  (a0)+,(a1)+
  3941.         move.w  (a0)+,(a1)+
  3942.         move.w  (a0)+,(a1)+
  3943.         move.w  (a0)+,(a1)+
  3944.         move.w  (a0)+,(a1)+
  3945.         move.w  (a0)+,(a1)+
  3946.         move.w  (a0)+,(a1)+
  3947.         move.w  (a0)+,(a1)+
  3948.  
  3949.         move.w  (a0)+,(a1)+
  3950.         move.w  (a0)+,(a1)+
  3951.         move.w  (a0)+,(a1)+
  3952.         move.w  (a0)+,(a1)+
  3953.         move.w  (a0)+,(a1)+
  3954.         move.w  (a0)+,(a1)+
  3955.         move.w  (a0)+,(a1)+
  3956.         move.w  (a0)+,(a1)+
  3957.  
  3958.         move.w  (a0)+,(a1)+
  3959.         move.w  (a0)+,(a1)+
  3960.         move.w  (a0)+,(a1)+
  3961.         move.w  (a0)+,(a1)+
  3962.         move.w  (a0)+,(a1)+
  3963.         move.w  (a0)+,(a1)+
  3964.         move.w  (a0)+,(a1)+
  3965.         move.w  (a0)+,(a1)+
  3966.  
  3967.         move.w  (a0)+,(a1)+
  3968.         move.w  (a0)+,(a1)+
  3969.         move.w  (a0)+,(a1)+
  3970.         move.w  (a0)+,(a1)+
  3971.         move.w  (a0)+,(a1)+
  3972.         move.w  (a0)+,(a1)+
  3973.         move.w  (a0)+,(a1)+
  3974.         move.w  (a0)+,(a1)+
  3975.  
  3976.         move.w  (a0)+,(a1)+
  3977.         move.w  (a0)+,(a1)+
  3978.         move.w  (a0)+,(a1)+
  3979.         move.w  (a0)+,(a1)+
  3980.         move.w  (a0)+,(a1)+
  3981.         move.w  (a0)+,(a1)+
  3982.         move.w  (a0)+,(a1)+
  3983.         move.w  (a0)+,(a1)+
  3984.  
  3985.         move.w  (a0)+,(a1)+
  3986.         move.w  (a0)+,(a1)+
  3987.         move.w  (a0)+,(a1)+
  3988.         move.w  (a0)+,(a1)+
  3989.         move.w  (a0)+,(a1)+
  3990.         move.w  (a0)+,(a1)+
  3991.         move.w  (a0)+,(a1)+
  3992.         move.w  (a0)+,(a1)+
  3993.  
  3994.         move.w  (a0)+,(a1)+
  3995.         move.w  (a0)+,(a1)+
  3996.         move.w  (a0)+,(a1)+
  3997.         move.w  (a0)+,(a1)+
  3998.         move.w  (a0)+,(a1)+
  3999.         move.w  (a0)+,(a1)+
  4000.         move.w  (a0)+,(a1)+
  4001.         move.w  (a0)+,(a1)+
  4002.         adda    #48,a0
  4003.         adda    #48,a1
  4004.         dbf     d0,copyit
  4005.     rts
  4006.  
  4007. beamer:
  4008.     move.l    #$ff8205,a0
  4009.     move.l    #0,d0
  4010.     move.b    (a0),d0
  4011.     asl.l    #8,d0
  4012.     adda.w    #2,a0
  4013.     move.b    (a0),d0
  4014.     asl.l    #8,d0
  4015.     adda.w    #2,a0
  4016.     move.b    (a0),d0
  4017.     rts
  4018.  
  4019. flip_scr:
  4020.     bra    fl
  4021.         move.l  seen,d1
  4022.         move.l  d1,d2
  4023.         add.l   #160,d1
  4024.         add.l   #32000,d2
  4025. skloop:
  4026.         bsr     beamer
  4027.         cmp.l   d1,d0
  4028.         blt     skloop
  4029.         cmp.l   d2,d0
  4030.         bgt     skloop
  4031.  
  4032. fl:
  4033.         move.l  seen,A6
  4034.         move.l  hiden,seen
  4035.         move.l  A6,hiden
  4036.         move.l  sytable,A6
  4037.         move.l  ytable,sytable
  4038.         move.l  A6,ytable
  4039. *       rts
  4040. df:     move.w  #-1,-(sp)
  4041.         move.l  seen,-(sp)
  4042.         move.l  hiden,-(sp)
  4043.         move.w  #5,-(sp)
  4044.         trap    #14
  4045.         addi.l  #12,sp  
  4046.     move.w    #37,-(sp)
  4047.     trap    #14
  4048.     addq.l    #2,sp
  4049.         rts
  4050.  
  4051. ********************************************
  4052. * Atari ST hi-speed plotting subroutine    *
  4053. ********************************************
  4054. * For Low-resolution mode only             *
  4055. ********************************************
  4056. **************************************
  4057. * INITIALIZE THE PLOTTING ROUTINE:   *
  4058. * BUILDS PLOT ADDRESS TABLE (YTABLE) *
  4059. * FOR FAST PLOTTING.                 *
  4060. *                                    *
  4061. * CALL WITH:                         *
  4062. * pinit(SCREENADDRESS)               *
  4063. **************************************
  4064. plotinit:
  4065. move.l seen,a0    ;screen addr in A0
  4066. move.b #200,d1     ;200 Y positions
  4067. move.l #ytable1,a1 ;y table address in A1
  4068.  
  4069. iloop:
  4070. move.l a0,(a1)+    ;move address to table
  4071. adda.w #160,a0     ;increment address
  4072. subq.b #1,d1       ;1 less y position
  4073. bne iloop          ;loop if there's more!
  4074.  
  4075. move.l hiden,a0    ;screen addr in A0
  4076. move.b #200,d1     ;200 Y positions
  4077. move.l #ytable2,a1 ;y table address in A1
  4078.  
  4079. iloop2:
  4080. move.l a0,(a1)+    ;move address to table
  4081. adda.w #160,a0     ;increment address
  4082. subq.b #1,d1       ;1 less y position
  4083. bne iloop2         ;loop if there's more!
  4084. move.l  #ytable2,ytable
  4085. rts
  4086.  
  4087. pixelx: blk.w   1,0
  4088. pixely: blk.w   1,0
  4089. pixelcolor:
  4090.         blk.w   1,0
  4091. ytable1:        blk.l   200,0
  4092. ytable2:        blk.l   200,0
  4093. ytable:         blk.l   1,0
  4094. sytable:        blk.l   1,0
  4095. ********************************************
  4096. myplot2:
  4097. movem.l    d0-d5/a0-a1,-(sp)
  4098. move.w pixelx,d0      ;x coordinate in D0
  4099. move.w d0,d3         ;duplicate in D3
  4100. andi.w #15,d3        ;mask off lower 4 bits
  4101. move.w pixely,d1      ;get y coordinate,
  4102. lsl.w #2,d1          ;mult by 4 for index
  4103. move.w pixelcolor,d2      ;get color number
  4104.  
  4105. lsr.w     #1,d0             ;x coord / 2
  4106. and.w #$00f8,d0      ;strip lower 3 bits
  4107. move.w d0,a0        ;move x offset to A0
  4108. move.l ytable,a1   ;get y table addr
  4109. adda.l 0(a1,d1.w),a0 ;got final pixel addr!
  4110. move.w #$8000,d4     ;set ON pixel mask
  4111. lsr.w d3,d4          ;shift right D3 times
  4112. move.l #$80008000,d5 ;set OFF pixel mask
  4113. lsr.l d3,d5          ;shift right D3 times
  4114. eor.l #$ffffffff,d5  ;toggle all bits in D5
  4115. bra    myphere
  4116.  
  4117. **************************************
  4118. * PLOT A PIXEL WITH MY ROUTINE       *
  4119. *                                    *
  4120. * CALL WITH:                         *
  4121. * myplot(X,Y,COLOR)                  *
  4122. **************************************
  4123. myplot:
  4124.     movem.l    d0-d5/a0-a1,-(sp)
  4125.     move.w pixelx,d0      ;x coordinate in D0
  4126. *    cmp.w #302,d0
  4127. *    bcc pltxit    
  4128. *    cmpi.w    #113,d0
  4129. *    blt    pltxit
  4130.     move.w d0,d3         ;duplicate in D3
  4131.     andi.w #15,d3        ;mask off lower 4 bits
  4132.     move.w pixely,d1      ;get y coordinate,
  4133. *    cmp.w #199,d1
  4134. *    bcc pltxit
  4135.     lsl.w #2,d1          ;mult by 4 for index
  4136.     move.w pixelcolor,d2      ;get color number
  4137.  
  4138.     lsr.w     #1,d0             ;x coord / 2
  4139.     and.w #$00f8,d0      ;strip lower 3 bits
  4140.     move.w d0,a0        ;move x offset to A0
  4141.     move.l ytable,a1   ;get y table addr
  4142.     adda.l 0(a1,d1.w),a0 ;got final pixel addr!
  4143.     cmpi.w    #15,d3
  4144.     beq    singlepix
  4145.     move.w #$c000,d4     ;set ON pixel mask
  4146.     lsr.w d3,d4          ;shift right D3 times
  4147.     move.l #$c000c000,d5 ;set OFF pixel mask
  4148.     lsr.l d3,d5          ;shift right D3 times
  4149.     eor.l #$ffffffff,d5  ;toggle all bits in D5
  4150.     bra    myphere
  4151.  
  4152. singlepix:
  4153.     move.w #$8000,d4     ;set ON pixel mask
  4154.     lsr.w d3,d4          ;shift right D3 times
  4155.     move.l #$80008000,d5 ;set OFF pixel mask
  4156.     lsr.l d3,d5          ;shift right D3 times
  4157.     eor.l #$ffffffff,d5  ;toggle all bits in D5
  4158.     and.l d5,(a0)        ;turn off old pixel
  4159.     and.l d5,4(a0)       ;(both longwords)
  4160.  
  4161. ******************************
  4162. * Now turn on the new pixel! *
  4163. ******************************
  4164.  
  4165. * BIT 1 *
  4166.  
  4167. btst #0,d2           ;set the bit?
  4168. beq bbit2             ;no!
  4169. or.w d4,(a0)         ;turn it on!
  4170.  
  4171. * BIT 2 *
  4172.  
  4173. bbit2:
  4174. btst #1,d2           ;set it?
  4175. beq bbit4             ;no!
  4176. or.w d4,2(a0)        ;turn it on!
  4177.  
  4178. * BIT 4 *
  4179.  
  4180. bbit4:
  4181. btst #2,d2           ;set bit?
  4182. beq bbit8             ;no!
  4183. or.w d4,4(a0)        ;turn it on!
  4184.  
  4185. * BIT 8 *
  4186.  
  4187. bbit8:
  4188. btst #3,d2           ;set bit?
  4189. beq mysec           ;no, exit.
  4190. or.w d4,6(a0)        ;turn it on!
  4191.  
  4192. mysec:
  4193. adda.l    #8,a0
  4194. move.w #$8000,d4     ;set ON pixel mask
  4195. move.l #$80008000,d5 ;set OFF pixel mask
  4196. eor.l #$ffffffff,d5  ;toggle all bits in D5
  4197. and.l d5,(a0)        ;turn off old pixel
  4198. and.l d5,4(a0)       ;(both longwords)
  4199.  
  4200. ******************************
  4201. *    Turn off old pixel!     *
  4202. ******************************
  4203. myphere:
  4204.  
  4205. and.l d5,(a0)        ;turn off old pixel
  4206. and.l d5,4(a0)       ;(both longwords)
  4207.  
  4208. ******************************
  4209. * Now turn on the new pixel! *
  4210. ******************************
  4211.  
  4212. * BIT 1 *
  4213.  
  4214. btst #0,d2           ;set the bit?
  4215. beq bit2             ;no!
  4216. or.w d4,(a0)         ;turn it on!
  4217.  
  4218. * BIT 2 *
  4219.  
  4220. bit2:
  4221. btst #1,d2           ;set it?
  4222. beq bit4             ;no!
  4223. or.w d4,2(a0)        ;turn it on!
  4224.  
  4225. * BIT 4 *
  4226.  
  4227. bit4:
  4228. btst #2,d2           ;set bit?
  4229. beq bit8             ;no!
  4230. or.w d4,4(a0)        ;turn it on!
  4231.  
  4232. * BIT 8 *
  4233.  
  4234. bit8:
  4235. btst #3,d2           ;set bit?
  4236. beq pltxit           ;no, exit.
  4237. or.w d4,6(a0)        ;turn it on!
  4238.  
  4239. pltxit:
  4240. movem.l    (sp)+,d0-d5/a0-a1
  4241.     rts                  ;bye!
  4242.  
  4243. **********************
  4244. * get low-rez pixel  *
  4245. * get0(scrnbase,x,y) *
  4246. **********************
  4247. *gets pixel in hiden screen
  4248.  
  4249. mygetpix:
  4250. move.l hiden,a1
  4251. clr.w d0        ;zero result register
  4252. move.w pixely,d3    ;get Y coordinate
  4253. and.l #$0000ffff,d3    ;mask off for multiply
  4254. mulu #160,d3        ;multiply by 160 (# of bytes per scan line)
  4255. adda.l d3,a1        ;add to screen base address
  4256. move.w pixelx,d1    ;get X coordinate
  4257. move.w d1,d2        ;duplicate it in D2
  4258. lsr.w #1,d1        ;divide it by 2
  4259. and.w #$00f8,d1        ;turn off lower 3 bits
  4260. adda.w d1,a1        ;add to screen address register
  4261.  
  4262. move.w (a1),d3        ;grab screen word
  4263. and.l #15,d2        ;mask X to 0-15
  4264. move.w #$8000,d1    ;set up bit mask
  4265. lsr.w d2,d1        ;shift bit mask 0-15 bits
  4266. and.w d1,d3        ;mask off bit 0
  4267. beq bit0b        ;bit's off, go get next color bit
  4268. move.w #1,d0        ;turn on bit 0 in result
  4269.  
  4270. bit0b:
  4271. move.w 2(a1),d3        ;get screen word for bit 1 of color
  4272. and.w d1,d3        ;get bit 1
  4273. beq bit0c        ;it's off, try bit 2
  4274. or.w #2,d0        ;turn on bit 1 in result
  4275.  
  4276. bit0c:
  4277. move.w 4(a1),d3        ;get screen word for bit 2
  4278. and.w d1,d3        ;get bit 2
  4279. beq bit0d        ;it's off, try bit 3
  4280. or.w #4,d0        ;turn on bit 2 in result
  4281.  
  4282. bit0d:
  4283. move.w 6(a1),d3        ;get word for bit 3
  4284. and.w d1,d3        ;get bit 3
  4285. beq getx0        ;it's off!
  4286. or.w #8,d0        ;turn on bit 3 in result
  4287.  
  4288. getx0:
  4289. rts
  4290.  
  4291.  
  4292. *************************************************
  4293. linea:  dc.w    $a000
  4294.         move.l  a0,linepar
  4295.         move.l  8(a0),intin
  4296.         move.l  12(a0),ptsin
  4297.         rts
  4298.  
  4299. *************************************************
  4300.  
  4301. ***********************fancy clear screen****************
  4302. clearsc:move.l  #99,d0
  4303.         move.l  screen,a0
  4304. cl1:    move.w  #159,d1
  4305. cl2:    move.w  #0,(a0)+
  4306.         dbf     d1,cl2
  4307.         addi.l  #160,a0
  4308.         dbf     d0,cl1
  4309.         move.w  #99,d0
  4310.         move.l  screen,a0
  4311.         addi.l  #160,a0
  4312. cl3:    move.w  #159,d1
  4313. cl4:    move.w  #0,(a0)+
  4314.         dbf     d1,cl4
  4315.         addi.l  #160,a0
  4316.         dbf     d0,cl3
  4317.         rts
  4318.  
  4319.  
  4320. cldel:  move.w  #3000,d2
  4321. cdel1:  nop
  4322.         dbf     d2,cdel1
  4323.         rts
  4324. ********************************
  4325. copyintoboth:
  4326.         move.l  screen4,a0
  4327.         move.l  screen3,a1
  4328.         move.w  #4000,d0
  4329. cib3:
  4330.         move.l  (a0)+,(a1)+
  4331.         move.l  (a0)+,(a1)+
  4332.         dbf     d0,cib3
  4333. *now clear the title stuff out
  4334.     bsr    clita
  4335.  
  4336.         move.l  screen3,a0
  4337.         move.l  screen1,a1
  4338.         move.w  #4000,d0
  4339. cib:
  4340.         move.l  (a0)+,(a1)+
  4341.         move.l  (a0)+,(a1)+
  4342.         dbf     d0,cib
  4343.         move.l  screen3,a0
  4344.         move.l  screen2,a1
  4345.         move.w  #4000,d0
  4346. cib2:
  4347.         move.l  (a0)+,(a1)+
  4348.         move.l  (a0)+,(a1)+
  4349.         dbf     d0,cib2
  4350.  
  4351.  
  4352.         rts
  4353.  
  4354.  
  4355. clita:
  4356.         move.l  screen3,a1      ;first copy from third to hiden
  4357.         move.l  #149,d0
  4358.         add.l   #4000,a1
  4359. clit:
  4360.         move.w  #0,(a1)+
  4361.         move.w  #0,(a1)+
  4362.         move.w  #0,(a1)+
  4363.         move.w  #0,(a1)+
  4364.         move.w  #0,(a1)+
  4365.         move.w  #0,(a1)+
  4366.         move.w  #0,(a1)+
  4367.         move.w  #0,(a1)+
  4368.  
  4369.         move.w  #0,(a1)+
  4370.         move.w  #0,(a1)+
  4371.         move.w  #0,(a1)+
  4372.         move.w  #0,(a1)+
  4373.         move.w  #0,(a1)+
  4374.         move.w  #0,(a1)+
  4375.         move.w  #0,(a1)+
  4376.         move.w  #0,(a1)+
  4377.  
  4378.         move.w  #0,(a1)+
  4379.         move.w  #0,(a1)+
  4380.         move.w  #0,(a1)+
  4381.         move.w  #0,(a1)+
  4382.         move.w  #0,(a1)+
  4383.         move.w  #0,(a1)+
  4384.         move.w  #0,(a1)+
  4385.         move.w  #0,(a1)+
  4386.  
  4387.         move.w  #0,(a1)+
  4388.         move.w  #0,(a1)+
  4389.         move.w  #0,(a1)+
  4390.         move.w  #0,(a1)+
  4391.         move.w  #0,(a1)+
  4392.         move.w  #0,(a1)+
  4393.         move.w  #0,(a1)+
  4394.         move.w  #0,(a1)+
  4395.  
  4396.         move.w  #0,(a1)+
  4397.         move.w  #0,(a1)+
  4398.         move.w  #0,(a1)+
  4399.         move.w  #0,(a1)+
  4400.         move.w  #0,(a1)+
  4401.         move.w  #0,(a1)+
  4402.         move.w  #0,(a1)+
  4403.         move.w  #0,(a1)+
  4404.  
  4405.         move.w  #0,(a1)+
  4406.         move.w  #0,(a1)+
  4407.         move.w  #0,(a1)+
  4408.         move.w  #0,(a1)+
  4409.         move.w  #0,(a1)+
  4410.         move.w  #0,(a1)+
  4411.         move.w  #0,(a1)+
  4412.         move.w  #0,(a1)+
  4413.  
  4414.         move.w  #0,(a1)+
  4415.         move.w  #0,(a1)+
  4416.         move.w  #0,(a1)+
  4417.         move.w  #0,(a1)+
  4418.         move.w  #0,(a1)+
  4419.         move.w  #0,(a1)+
  4420.         move.w  #0,(a1)+
  4421.         move.w  #0,(a1)+
  4422. *        adda    #48,a0
  4423.         adda    #48,a1
  4424.         dbf     d0,clit
  4425.     rts
  4426. ********************fancy copy screen*************
  4427. copysc: move.w  #99,d0
  4428.         move.l  screen,a0
  4429.         move.l  screen2,a1
  4430. cop1:   move.w  #159,d1
  4431. cop2:   move.w  (a1)+,(a0)+
  4432.         dbf     d1,cop2
  4433.         addi.l  #160,a0
  4434.         addi.l  #160,a1
  4435.         dbf     d0,cop1
  4436.         move.w  #99,d0
  4437.         move.l  screen,a0
  4438.         addi.l  #160,a0
  4439.         move.l  screen2,a1
  4440.         addi.l  #160,a1
  4441. cop3:   move.w  #159,d1
  4442. cop4:   move.w  (a1)+,(a0)+
  4443.         dbf     d1,cop4
  4444.         addi.l  #160,a0
  4445.         addi.l  #160,a1
  4446.         dbf     d0,cop3
  4447.         rts
  4448. **********************routine to print a dec nuber*************
  4449. prtnum: 
  4450.         move.l  #0,d7
  4451.         move.w  number,d7
  4452.         andi.l  #$ffff,d7
  4453.         move.l  #line,a5
  4454.  
  4455. dodec:  move.l  d7,d6
  4456.         divu    #10,d6
  4457.         move.w  d6,d7
  4458.         swap    d6
  4459.         addi.w  #16,d6
  4460.         move.b  d6,(a5)+
  4461.         cmpi.w  #0,d7
  4462.         bne     dodec
  4463.  
  4464.         move.l  pos,-(sp)
  4465.         move.w  #9,-(sp)
  4466.         trap    #1
  4467.         addq.l  #6,sp
  4468.         move.l  #greencol,-(sp)
  4469.         move.w  #9,-(sp)
  4470.         trap    #1
  4471.         addq.l  #6,sp
  4472.  
  4473.         move.l  #backcol,-(sp)
  4474.         move.w  #9,-(sp)
  4475.         trap    #1
  4476.         addq.l  #6,sp
  4477.  
  4478.  
  4479. out:    cmpa.l  #line,a5
  4480.         beq     decback
  4481.  
  4482.         move.b  -(a5),d7
  4483.         andi.w  #$ff,d7
  4484.         
  4485.         move.w  d7,-(sp)
  4486.         move.w  #5,-(sp)
  4487.         move.w  #3,-(sp)
  4488.         trap    #13
  4489.         addq.l  #6,sp
  4490.  
  4491.         bra     out
  4492.  
  4493.  
  4494. decback:
  4495.         move.w  #' ',-(sp)
  4496.         move.w  #2,-(sp)
  4497.         trap    #1
  4498.         addq.l  #4,sp
  4499.  
  4500.         rts
  4501.  
  4502. *************puts my mouse interupt in***************** 
  4503.  
  4504.  
  4505. putrout:move.w  #34,-(sp)
  4506.         trap    #14
  4507.         addq.l  #2,sp
  4508.         move.l  d0,a0
  4509.         move.l  16(a0),oldmouse
  4510.         move.l  #myrout,16(a0)
  4511.         rts
  4512. **************my ubeut mouse interupt*******************
  4513. myrout:
  4514.         movem.l d0-d1/a0,-(sp)
  4515.         moveq   #0,d0   
  4516.         move.b  (a0),d0
  4517.         cmpi.b  #$fa,d0
  4518.         bne     myr1
  4519.         move.w  #1,buttondat
  4520.         bra     myrxy
  4521. myr1:
  4522.         cmpi.b  #$f9,d0
  4523.         bne     myr2
  4524.         move.w  #2,buttondat
  4525.         bra     myrxy
  4526. myr2:
  4527.         cmpi.b  #$fb,d0
  4528.         bne     myr3
  4529.         move.w  #3,buttondat
  4530.         bra     myrxy
  4531. myr3:
  4532.         move.w  #0,buttondat
  4533.  
  4534. myrxy:
  4535.         moveq   #0,d0
  4536.         move.b  1(a0),d0
  4537.         ext.w   d0
  4538.         moveq   #0,d1
  4539.         move.b  2(a0),d1
  4540.         ext.w   d1
  4541.         add.w   d0,mx
  4542.         add.w   d1,mmy
  4543.         move.w  mx,d0
  4544.         move.w  mmy,d1
  4545.         bsr     extra
  4546.         move.w  d0,mx
  4547.         move.w  d1,mmy
  4548.         movem.l (sp)+,d0-d1/a0
  4549.         rts
  4550.  
  4551. extra:  cmp.w   mmin,d0
  4552.         bge    .S extra1
  4553.         move.w  mmax2,d0
  4554.         bra    .S extra2
  4555. extra1: cmp.w   mmax,d0
  4556.         ble    .S extra2
  4557.         move.w  mmin2,d0
  4558. extra2: tst.w   d1
  4559.         bge    .S extra3
  4560.         move.w  #199,d1
  4561.         rts
  4562. extra3: cmp.w   #199,d1
  4563.         ble    .S extra4
  4564.         move.w  #0,d1
  4565. extra4: rts
  4566.  
  4567.  
  4568. mmin:    blk.w    1,0
  4569. mmax:    blk.w    1,0
  4570. mx:    blk.w    1,0
  4571. mmy:    blk.w    1,0
  4572. buttondat:
  4573.     blk.w    1,0
  4574.  
  4575. ************get screen address***************
  4576. getscrn:move.w  #2,-(sp)
  4577.         trap    #14
  4578.         addq.l  #2,sp
  4579.         move.l  d0,screen
  4580.         move.l  d0,screen1
  4581.         move.l  d0,screen2
  4582.         subi.l  #$8000,screen2
  4583.         move.l  screen2,screen3
  4584.         subi.l  #$8000,screen3
  4585.     move.l    screen3,screen4
  4586.     subi.l    #$8000,screen4
  4587.         move.l  screen1,seen
  4588.         move.l  screen2,hiden
  4589.     move.l    #ytable1,sytable
  4590.     move.l    #ytable2,ytable
  4591.         rts
  4592.  
  4593.  
  4594. screen4:    blk.l    1,0
  4595. ************change colors****************
  4596. colors: move.l #palette,-(sp)
  4597.         move.w #6,-(sp)
  4598.         trap #14
  4599.         addq.l #6,sp
  4600.         rts
  4601. ************change colors****************
  4602. darkcolors:
  4603.         move.l #palette2,-(sp)
  4604.         move.w #6,-(sp)
  4605.         trap #14
  4606.         addq.l #6,sp
  4607.         rts
  4608.  
  4609. *****************wait for a key*********************
  4610. wait:   move.w  $26e6,d0
  4611.         cmpi.w  #2,d0
  4612.         beq     wback
  4613.         bra     wait
  4614. wback:  rts
  4615. ***************turn mouse off***********************
  4616. mousof: dc.w    $a00a   
  4617.         rts
  4618.  
  4619. *******************************************************************
  4620. ; SYSNOPSIS
  4621. ;    RandomSeed( SeedValue )
  4622. ;                   D0
  4623.  
  4624. randomseed:     ADD.L   D0,D1           ;user seed in d0 (d1 too)
  4625.                 MOVEM.L D0/D1,RND
  4626.  
  4627. ; drops through to the main random function (not user callable)
  4628.  
  4629. LongRnd:        MOVEM.L D2-D3,-(SP)     
  4630.                 MOVEM.L RND,D0/D1       ;D0=LSB's, D1=MSB's of random number
  4631.                 ANDI.B  #$0E,D0         ;ensure upper 59 bits are an...
  4632.                 ORI.B   #$20,D0         ;...odd binary number
  4633.                 MOVE.L  D0,D2
  4634.                 MOVE.L  D1,D3
  4635.                 ADD.L   D2,D2           ;accounts for 1 of 17 left shifts
  4636.                 ADDX.L  D3,D3           ;[D2/D3] = RND*2
  4637.                 ADD.L   D2,D0
  4638.                 ADDX.L  D3,D1           ;[D0/D1] = RND*3
  4639.                 SWAP    D3              ;shift [D2/D3] additional 16 times
  4640.                 SWAP    D2
  4641.                 MOVE.W  D2,D3
  4642.                 CLR.W   D2
  4643.                 ADD.L   D2,D0           ;add to [D0/D1]
  4644.                 ADDX.L  D3,D1
  4645.                 MOVEM.L D0/D1,RND       ;save for next time through
  4646.                 MOVE.L  D1,D0           ;most random part to D0
  4647.                 MOVEM.L (SP)+,D2-D3
  4648.                 RTS
  4649.  
  4650. ; SYSNOPSIS
  4651. ;    RndNum = Random( UpperLimit )
  4652. ;      D0                 D0
  4653.  
  4654. random:         MOVE.W  D2,-(SP)
  4655.                 MOVE.W  D0,D2           ;save upper limit
  4656.                 BEQ.S   r1              ;range of 0 returns 0 always
  4657.                 BSR.S   LongRnd         ;get a longword random number
  4658.                 CLR.W   D0              ;use upper word (it's most random)
  4659.                 SWAP    D0
  4660.                 ext.l   d0
  4661.                 DIVs    D2,D0           ;divide by range...
  4662.                 CLR.W   D0              ;...and use remainder for the value
  4663.                 SWAP    D0              ;result in D0.W
  4664. r1:             MOVE.W  (SP)+,D2
  4665.                 RTS
  4666.  
  4667. randomplus:     MOVE.W  D2,-(SP)
  4668.                 MOVE.W  D0,D2           ;save upper limit
  4669.                 BEQ.S   r2              ;range of 0 returns 0 always
  4670.                 BSR.S   LongRnd         ;get a longword random number
  4671.                 CLR.W   D0              ;use upper word (it's most random)
  4672.                 SWAP    D0
  4673.                 DIVu    D2,D0           ;divide by range...
  4674.                 CLR.W   D0              ;...and use remainder for the value
  4675.                 SWAP    D0              ;result in D0.W
  4676. r2:             MOVE.W  (SP)+,D2
  4677.                 RTS
  4678.  
  4679.  
  4680.  
  4681.  
  4682.  
  4683. *********************************************************
  4684. *       a brilliant routine courtesy of janko to        *
  4685. *       insert the vbi addresses in the jump table      *
  4686. *       lea address of routine in a0 do a jsr           *
  4687. *       putvbl and thats it!!!                          *
  4688. *********************************************************
  4689.  
  4690.  
  4691. putvbl: lea     $452,a1
  4692.         move.w  #1,(a1)
  4693.         moveq   #7,d1
  4694.         lea     $456,a1
  4695.         move.l  (a1),a1
  4696. vbl3:   subq.b  #1,d1
  4697.         cmpi.b  #0,d1
  4698.         beq.s   vbl4
  4699.         move.l  (a1)+,d0
  4700.         cmpi.l  #0,d0
  4701.         bne.S   vbl3
  4702.         suba.l  #4,a1
  4703.         move.l  a0,(a1)
  4704. vbl4:   rts
  4705.  
  4706.  
  4707.  
  4708. *********************************************************
  4709. *       my routines for loading in the screens          *
  4710. *       note i use degas format even though I           *
  4711. *       hate the package,due to it's simple format      *
  4712. *       ie: 32l for pallette and straight 32k screen    *
  4713. *       dump                                            *
  4714. *********************************************************
  4715.  
  4716. loadscr:move    #0,-(SP)        ;Open file
  4717.         move.l  #filename,-(SP) ;Address of filename
  4718.         move    #$3D,-(SP)
  4719.         trap    #1              ;Get handle number in D0
  4720.         addq.l  #8,SP
  4721.                 
  4722.         move    D0,-(SP)        ;Save handle
  4723.  
  4724.         move.l  #sounds,-(SP)    ;load pallette into safe area
  4725.         move.l  #128,-(SP)       ;length to read in
  4726.         move    D0,-(SP)        ;Handle
  4727.         move    #$3F,-(SP)      ;bios number
  4728.         trap    #1              ;Read file in
  4729.         addi.l   #12,SP
  4730.         move    (sp),d0        
  4731.                
  4732.         move.l  screen4,-(SP)    ;load it straight onto screen
  4733.         move.l  #32000,-(SP)    ;length to read in
  4734.         move    D0,-(SP)        ;Handle
  4735.         move    #$3F,-(SP)      ;bios number
  4736.         trap    #1              ;Read file in
  4737.         addi.l   #12,SP
  4738.                 
  4739.         move    #$3E,-(SP)      ;Handle already on stack
  4740.         trap    #1              ;Close file
  4741.         addq.l  #4,SP
  4742.         rts
  4743. *********************************
  4744. loadsounds:
  4745.     move    #0,-(SP)        ;Open file
  4746.         move.l  #filesounds,-(SP) ;Address of filename
  4747.         move    #$3D,-(SP)
  4748.         trap    #1              ;Get handle number in D0
  4749.         addq.l  #8,SP
  4750.                 
  4751.         move    D0,-(SP)        ;Save handle
  4752.  
  4753.         move.l  #sounds,-(SP)    ;load pallette into safe area
  4754.         move.l  #41150,-(SP)       ;length to read in
  4755.         move    D0,-(SP)        ;Handle
  4756.         move    #$3F,-(SP)      ;bios number
  4757.         trap    #1              ;Read file in
  4758.         addi.l   #12,SP
  4759.         move    (sp),d0        
  4760.  
  4761.         move    #$3E,-(SP)      ;Handle already on stack
  4762.         trap    #1              ;Close file
  4763.         addq.l  #4,SP
  4764.  
  4765.     move.l    #sounds,d0
  4766.     add.l    #0,d0
  4767.     move.l    d0,shoot1s
  4768.     move.l    #sounds,d0
  4769.     add.l    #1256,d0
  4770.     move.l    d0,shoot1b
  4771.  
  4772.     move.l    #sounds,d0
  4773.     add.l    #1258,d0
  4774.     move.l    d0,shoot0s
  4775.     move.l    #sounds,d0
  4776.     add.l    #2652,d0
  4777.     move.l    d0,shoot0b
  4778.  
  4779.     move.l    #sounds,d0
  4780.     add.l    #2652,d0
  4781.     move.l    d0,laughs
  4782.     move.l    #sounds,d0
  4783.     add.l    #9430,d0
  4784.     move.l    d0,laughb
  4785.  
  4786.     move.l    #sounds,d0
  4787.     add.l    #9430,d0
  4788.     move.l    d0,pays
  4789.     move.l    #sounds,d0
  4790.     add.l    #18419,d0
  4791.     move.l    d0,payb
  4792.  
  4793.     move.l    #sounds,d0
  4794.     add.l    #18420,d0
  4795.     move.l    d0,appears
  4796.     move.l    #sounds,d0
  4797.     add.l    #20270,d0
  4798.     move.l    d0,appearb
  4799.  
  4800.     move.l    #sounds,d0
  4801.     add.l    #20278,d0
  4802.     move.l    d0,rewards
  4803.     move.l    #sounds,d0
  4804.     add.l    #24963,d0
  4805.     move.l    d0,rewardb
  4806.  
  4807.     move.l    #sounds,d0
  4808.     add.l    #24963,d0
  4809.     move.l    d0,booms
  4810.     move.l    #sounds,d0
  4811.     add.l    #27664,d0
  4812.     move.l    d0,boomb
  4813.  
  4814.     move.l    #sounds,d0
  4815.     add.l    #27664,d0
  4816.     move.l    d0,bigbooms
  4817.     move.l    #sounds,d0
  4818.     add.l    #41149,d0
  4819.     move.l    d0,bigboomb
  4820.     rts
  4821.  
  4822. filesounds:    dc.b    'all.spl',0
  4823.     even
  4824. shoot0s:    blk.l    1,0
  4825. shoot0b:    blk.l    1,0
  4826. shoot1s:    blk.l    1,0
  4827. shoot1b:    blk.l    1,0
  4828. laughs:        blk.l    1,0
  4829. laughb:        blk.l    1,0
  4830. pays:    blk.l    1,0
  4831. payb:    blk.l    1,0
  4832. appears:    blk.l    1,0
  4833. appearb:    blk.l    1,0
  4834. rewards:    blk.l    1,0
  4835. rewardb:    blk.l    1,0
  4836. booms:    blk.l    1,0
  4837. boomb:    blk.l    1,0
  4838. bigbooms:    blk.l    1,0
  4839. bigboomb:    blk.l    1,0
  4840.  
  4841.  
  4842.  
  4843. loadmusic:
  4844.     move    #0,-(SP)        ;Open file
  4845.         move.l  #filemusic,-(SP) ;Address of filename
  4846.         move    #$3D,-(SP)
  4847.         trap    #1              ;Get handle number in D0
  4848.         addq.l  #8,SP
  4849.                 
  4850.         move    D0,-(SP)        ;Save handle
  4851.  
  4852.         move.l  #sounds,-(SP)    ;load pallette into safe area
  4853.         move.l  #50081,-(SP)       ;length to read in
  4854.         move    D0,-(SP)        ;Handle
  4855.         move    #$3F,-(SP)      ;bios number
  4856.         trap    #1              ;Read file in
  4857.         addi.l   #12,SP
  4858.         move    (sp),d0        
  4859.  
  4860.         move    #$3E,-(SP)      ;Handle already on stack
  4861.         trap    #1              ;Close file
  4862.         addq.l  #4,SP
  4863.     rts
  4864.  
  4865. filemusic:    dc.b    'music3.spl',0
  4866.     even
  4867. sounds:    blk.b    60731,0
  4868.     even
  4869.  
  4870. *********************************************************
  4871.  
  4872. loadballs:move    #0,-(SP)        ;Open file
  4873.         move.l  #fileballs,-(SP) ;Address of filename
  4874.         move    #$3D,-(SP)
  4875.         trap    #1              ;Get handle number in D0
  4876.         addq.l  #8,SP
  4877.                 
  4878.         move    D0,-(SP)        ;Save handle
  4879.  
  4880.         move.l  #dummy,-(SP)    ;load pallette into safe area
  4881.         move.l  #128,-(SP)       ;length to read in
  4882.         move    D0,-(SP)        ;Handle
  4883.         move    #$3F,-(SP)      ;bios number
  4884.         trap    #1              ;Read file in
  4885.         addi.l   #12,SP
  4886.         move    (sp),d0        
  4887.                
  4888.         move.l  screen3,-(SP)    ;load it straight onto screen
  4889.         move.l  #32000,-(SP)    ;length to read in
  4890.         move    D0,-(SP)        ;Handle
  4891.         move    #$3F,-(SP)      ;bios number
  4892.         trap    #1              ;Read file in
  4893.         addi.l   #12,SP
  4894.                 
  4895.         move    #$3E,-(SP)      ;Handle already on stack
  4896.         trap    #1              ;Close file
  4897.         addq.l  #4,SP
  4898.         rts
  4899.  
  4900. fileballs:
  4901.     dc.b    'qballs.neo',0
  4902.     even
  4903. ******************************
  4904. loadcorners:
  4905.     move    #0,-(SP)        ;Open file
  4906.         move.l  #filecorn,-(SP) ;Address of filename
  4907.         move    #$3D,-(SP)
  4908.         trap    #1              ;Get handle number in D0
  4909.         addq.l  #8,SP
  4910.                 
  4911.         move    D0,-(SP)        ;Save handle
  4912.  
  4913.         move.l  #dummy,-(SP)    ;load pallette into safe area
  4914.         move.l  #128,-(SP)       ;length to read in
  4915.         move    D0,-(SP)        ;Handle
  4916.         move    #$3F,-(SP)      ;bios number
  4917.         trap    #1              ;Read file in
  4918.         addi.l   #12,SP
  4919.         move    (sp),d0        
  4920.                
  4921.         move.l  screen3,-(SP)    ;load it straight onto screen
  4922.         move.l  #32000,-(SP)    ;length to read in
  4923.         move    D0,-(SP)        ;Handle
  4924.         move    #$3F,-(SP)      ;bios number
  4925.         trap    #1              ;Read file in
  4926.         addi.l   #12,SP
  4927.                 
  4928.         move    #$3E,-(SP)      ;Handle already on stack
  4929.         trap    #1              ;Close file
  4930.         addq.l  #4,SP
  4931.         rts
  4932.  
  4933. filecorn:
  4934.     dc.b    'qcorner.neo',0
  4935.     even
  4936.  
  4937. *******************blocks for rotated sprites*************
  4938. screen3:blk.l   1,0
  4939. pblock: blk.l   50
  4940. screen: blk.l   1
  4941. off:    blk.w   1
  4942. ynflg:  blk.w   1
  4943. screen2:blk.l   1
  4944. screen1:blk.l   1
  4945. dummy:  blk.l   32
  4946. xvel:   blk.w   1
  4947. yvel:   blk.w   1
  4948. brhits:    blk.w    1,0
  4949. filename:       dc.b    'qtitle.neo',0  
  4950. even
  4951. line:   blk.b   10
  4952. pos:    blk.l   1
  4953. col:    blk.l   1
  4954. number: blk.w   1
  4955. whichblock:     blk.l   1,0
  4956. shipx:  blk.w   1,0
  4957. shipy:  blk.w   1,0
  4958. shootx: blk.w   1,0
  4959. shooty: blk.w   1,0
  4960. bigshootx:      blk.w   1,0
  4961. bigshooty:      blk.w   1,0
  4962. shotxvel:       blk.w   1,0
  4963. shotyvel:       blk.w   1,0
  4964. levpos:         dc.b    27,89,41,64,0
  4965. scorepos:       dc.b    27,89,38,64,0
  4966. shippos:        dc.b    27,89,45,65,0
  4967. backcol:        dc.b    27,99,2,0
  4968. greencol:       dc.b    27,98,10,0
  4969.  
  4970. even
  4971. ships:    blk.w    1,0
  4972. intin:  blk.l   1
  4973. ptsin:  blk.l   1
  4974. putpix: equ     $a001
  4975. getpix: equ     $a002
  4976. seen:   blk.l   1
  4977. hiden:  blk.l   1
  4978. bigflg: blk.w   1,-1
  4979. palette2:
  4980.         dc.w    $0000,$0000,$0000
  4981.         dc.w    $0000,$0000,$0000
  4982.         dc.w    $0000,$0000,$0000
  4983.         dc.w    $0000,$0000,$0000
  4984.         dc.w    $0000,$0000,$0000
  4985.         dc.w    $0000
  4986.  
  4987.  
  4988.  
  4989. illegal
  4990. *************************************STORAGE*******************************
  4991. shooting:       blk.w   1,-1
  4992. rnd:            blk.l   2,0
  4993. beatflg:        blk.w   1,0
  4994. speed:        blk.w    1,0
  4995. brtimer:        blk.w   1,0
  4996. lastbr:         blk.w   1,0
  4997. grtimer:        blk.w   1,0
  4998. levsp:          blk.l   1,0
  4999. levtim:         blk.w   1,0
  5000. pdflg:          blk.w   1,0
  5001. my:             blk.w   1,0
  5002. whsp:           blk.l   1,0
  5003. tempsp:         blk.w   500,0
  5004. oldsp:          blk.w   1,-1
  5005. oldht:          blk.w   1,0
  5006. oldwt:          blk.w   1,0
  5007. oldscr:         blk.l   1,0
  5008. tempsh:         blk.l   1,0
  5009. score:          blk.w   1,0
  5010. level:          blk.w   1,0
  5011. oldmouse:       blk.l   1,0
  5012. linepar:        blk.l   1,0
  5013. mmin2:           blk.w   1,0
  5014. mmax2:           blk.w   1,0
  5015. byebye:         blk.w   1,-1
  5016. blockad:        blk.l   1,0
  5017.  
  5018. *  Hardware color pallet  (color 0 to 15):
  5019.  
  5020. palette:dc.w    $0000,$0777,$0555,$0333,$0007,$0005,$0003,$0750
  5021.         dc.w    $0630,$0420,$0070,$0050,$0030,$0707,$0606,$0404
  5022.  
  5023. fade1:    dc.w    $0000,$0666,$0444,$0222,$0006,$0004,$0002,$0640
  5024.         dc.w    $0520,$0310,$0060,$0040,$0020,$0606,$0505,$0303
  5025.  
  5026. fade2:    dc.w    $0000,$0555,$0333,$0111,$0005,$0003,$0001,$0530
  5027.         dc.w    $0410,$0200,$0050,$0030,$0010,$0505,$0404,$0202
  5028.  
  5029. fade3:    dc.w    $0000,$0444,$0222,$0000,$0004,$0002,$0000,$0420
  5030.         dc.w    $0300,$0100,$0040,$0020,$0000,$0404,$0303,$0101
  5031.  
  5032. fade4:    dc.w    $0000,$0333,$0111,$0000,$0003,$0001,$0000,$0310
  5033.         dc.w    $0200,$0000,$0030,$0010,$0000,$0303,$0202,$0000
  5034.  
  5035. fade5:    dc.w    $0000,$0222,$0000,$0000,$0002,$0000,$0000,$0200
  5036.         dc.w    $0100,$0000,$0020,$0000,$0000,$0202,$0101,$0000
  5037.  
  5038. fade6:    dc.w    $0000,$0111,$0000,$0000,$0001,$0000,$0000,$0100
  5039.         dc.w    $0000,$0000,$0010,$0000,$0000,$0101,$0000,$0000
  5040.  
  5041. fade7:    dc.w    $0000,$0000,$0000,$0000,$0000,$0000,$0000,$0000
  5042.         dc.w    $0000,$0000,$0000,$0000,$0000,$0000,$0000,$0000
  5043.  
  5044.  
  5045.  
  5046. boomcols:
  5047.     dc.w    $0100,$0200,$0300,$0400,$0500,$0600,$0700
  5048.     dc.w    $0600,$0500,$0400,$0300,$0200,$0100,$0000
  5049.  
  5050.  
  5051. panel:    dc.w    $6060,$7F80,$801F,$0000,$0000,$0000,$FFFF,$0000
  5052.     dc.w    $0000,$0000,$FFFF,$0000,$0000,$0000,$FFFF,$0000
  5053.     dc.w    $0000,$0000,$FFFF,$0000,$0183,$01FC,$FE00,$0000
  5054.     dc.w    $6060,$7F80,$8010,$0000,$0000,$0000,$4104,$0000
  5055.     dc.w    $0000,$0000,$1041,$0000,$0000,$0000,$0410,$0000
  5056.     dc.w    $0000,$0000,$4104,$0000,$0183,$01FC,$1000,$0000
  5057.  
  5058.  
  5059. ship0:    dc.w    $0E00,$0000,$0001,$0000,$0070,$0000,$8000,$0000
  5060.     dc.w    $1EC2,$0CC2,$0001,$0000,$4378,$4330,$8000,$0000
  5061.     dc.w    $3CFE,$1EBC,$0001,$0000,$7F3C,$3D78,$8000,$0000
  5062.     dc.w    $7CFE,$3E81,$0000,$0000,$7F3E,$817C,$0000,$0000
  5063.     dc.w    $FC80,$02FF,$0000,$0000,$013F,$FF40,$0000,$0000
  5064.     dc.w    $0080,$FEFF,$0000,$0000,$0100,$FF7F,$0000,$0000
  5065.     dc.w    $80C0,$E2C0,$1C3F,$0000,$0301,$0347,$FC38,$0000
  5066.     dc.w    $C2FF,$DEFF,$2000,$0000,$FF43,$FF7B,$0004,$0000
  5067.     dc.w    $7EFF,$3EFF,$4000,$0000,$FF7E,$FF7C,$0002,$0000
  5068.     dc.w    $3E00,$3E00,$0000,$0000,$007C,$007C,$0000,$0000
  5069.  
  5070. ship3:    dc.w    $3400,$3800,$0000,$0000,$6600,$3800,$4000,$0000
  5071.     dc.w    $C700,$DA00,$2000,$0000,$C780,$EB00,$1000,$0000
  5072.     dc.w    $C7C0,$EB80,$1000,$0000,$C7C0,$EB80,$1000,$0000
  5073.     dc.w    $E0C0,$FF00,$0000,$0000,$0000,$0000,$0000,$0000
  5074.     dc.w    $7F80,$7F80,$0000,$0000,$7380,$7C80,$0000,$0000
  5075.     dc.w    $6300,$6D00,$1000,$0000,$6300,$6D00,$1000,$0000
  5076.     dc.w    $6300,$6D00,$1000,$0000,$6300,$6D00,$1000,$0000
  5077.     dc.w    $6380,$6C80,$1000,$0000,$6000,$6E00,$11C0,$0000
  5078.     dc.w    $6000,$6E00,$11C0,$0000,$6380,$6C80,$1000,$0000
  5079.     dc.w    $6300,$6D00,$1000,$0000,$6300,$6D00,$1000,$0000
  5080.     dc.w    $6300,$6D00,$1000,$0000,$6300,$6D00,$1000,$0000
  5081.     dc.w    $7380,$7C80,$0000,$0000,$7F80,$7F80,$0000,$0000
  5082.     dc.w    $0000,$0000,$0000,$0000,$E0C0,$FF00,$0000,$0000
  5083.     dc.w    $C7C0,$EB80,$1000,$0000,$C7C0,$EB80,$1000,$0000
  5084.     dc.w    $C780,$EB00,$1000,$0000,$C700,$DA00,$2000,$0000
  5085.     dc.w    $6600,$3800,$4000,$0000,$3400,$3800,$0000,$0000
  5086.  
  5087. ship2:    dc.w    $3E00,$3E00,$0000,$0000,$007C,$007C,$0000,$0000
  5088.     dc.w    $7EFF,$3EFF,$4000,$0000,$FF7E,$FF7C,$0002,$0000
  5089.     dc.w    $C2FF,$DEFF,$2000,$0000,$FF43,$FF7B,$0004,$0000
  5090.     dc.w    $80C0,$E2C0,$1C3F,$0000,$0301,$0347,$FC38,$0000
  5091.     dc.w    $0080,$FEFF,$0000,$0000,$0100,$FF7F,$0000,$0000
  5092.     dc.w    $FC80,$02FF,$0000,$0000,$013F,$FF40,$0000,$0000
  5093.     dc.w    $7CFE,$3E81,$0000,$0000,$7F3E,$817C,$0000,$0000
  5094.     dc.w    $3CFE,$1EBC,$0001,$0000,$7F3C,$3D78,$8000,$0000
  5095.     dc.w    $1EC2,$0CC2,$0001,$0000,$4378,$4330,$8000,$0000
  5096.     dc.w    $0E00,$0000,$0001,$0000,$0070,$0000,$8000,$0000
  5097.  
  5098. ship1:    dc.w    $0B00,$0700,$0000,$0000,$1980,$0700,$0080,$0000
  5099.     dc.w    $38C0,$16C0,$0100,$0000,$78C0,$35C0,$0200,$0000
  5100.     dc.w    $F8C0,$75C0,$0200,$0000,$F8C0,$75C0,$0200,$0000
  5101.     dc.w    $C1C0,$3FC0,$0000,$0000,$0000,$0000,$0000,$0000
  5102.     dc.w    $7F80,$7F80,$0000,$0000,$7380,$4F80,$0000,$0000
  5103.     dc.w    $3180,$2D80,$0200,$0000,$3180,$2D80,$0200,$0000
  5104.     dc.w    $3180,$2D80,$0200,$0000,$3180,$2D80,$0200,$0000
  5105.     dc.w    $7180,$4D80,$0200,$0000,$0180,$1D80,$E200,$0000
  5106.     dc.w    $0180,$1D80,$E200,$0000,$7180,$4D80,$0200,$0000
  5107.     dc.w    $3180,$2D80,$0200,$0000,$3180,$2D80,$0200,$0000
  5108.     dc.w    $3180,$2D80,$0200,$0000,$3180,$2D80,$0200,$0000
  5109.     dc.w    $7380,$4F80,$0000,$0000,$7F80,$7F80,$0000,$0000
  5110.     dc.w    $0000,$0000,$0000,$0000,$C1C0,$3FC0,$0000,$0000
  5111.     dc.w    $F8C0,$75C0,$0200,$0000,$F8C0,$75C0,$0200,$0000
  5112.     dc.w    $78C0,$35C0,$0200,$0000,$38C0,$16C0,$0100,$0000
  5113.     dc.w    $1980,$0700,$0080,$0000,$0B00,$0700,$0000,$0000
  5114.  
  5115.  
  5116. bat0:    dc.w    $0E18,$01E7,$0118,$0000,$1870,$E780,$1880,$0000
  5117.     dc.w    $1EE7,$0D00,$0118,$0000,$E778,$00B0,$1880,$0000
  5118.     dc.w    $3CE7,$1F00,$0118,$0000,$E73C,$00F8,$1880,$0000
  5119.     dc.w    $7C67,$3F80,$0118,$0000,$E63E,$01FC,$1880,$0000
  5120.     dc.w    $FC98,$03E7,$0118,$0000,$193F,$E7C0,$1880,$0000
  5121.     dc.w    $00D8,$FFE7,$0118,$0000,$1B00,$E7FF,$1880,$0000
  5122.     dc.w    $80E7,$E3FF,$1D18,$0000,$E701,$FFC7,$18B8,$0000
  5123.     dc.w    $C2E7,$DFFF,$2118,$0000,$E743,$FFFB,$1884,$0000
  5124.     dc.w    $7EE7,$3FFF,$4118,$0000,$E77E,$FFFC,$1882,$0000
  5125.     dc.w    $3E00,$3E00,$0000,$0000,$007C,$007C,$0000,$0000
  5126.  
  5127. bat3:    dc.w    $3400,$3800,$0000,$0000,$6600,$3800,$4000,$0000
  5128.     dc.w    $C700,$DA00,$2000,$0000,$C780,$EB00,$1000,$0000
  5129.     dc.w    $C7C0,$EB80,$1000,$0000,$C7C0,$EB80,$1000,$0000
  5130.     dc.w    $E0C0,$FF00,$0000,$0000,$0000,$7FC0,$7FC0,$0000
  5131.     dc.w    $7D80,$7E40,$0000,$0000,$7B80,$7C40,$0000,$0000
  5132.     dc.w    $7380,$7C40,$0000,$0000,$0C40,$7000,$7FC0,$0000
  5133.     dc.w    $0C40,$7000,$7FC0,$0000,$7380,$7C40,$0000,$0000
  5134.     dc.w    $7380,$7C40,$0000,$0000,$7380,$7C40,$0000,$0000
  5135.     dc.w    $7380,$7C40,$0000,$0000,$7380,$7C40,$0000,$0000
  5136.     dc.w    $7380,$7C40,$0000,$0000,$0C40,$7000,$7FC0,$0000
  5137.     dc.w    $0C40,$7000,$7FC0,$0000,$7380,$7C40,$0000,$0000
  5138.     dc.w    $7B80,$7C40,$0000,$0000,$7D80,$7E40,$0000,$0000
  5139.     dc.w    $0000,$7FC0,$7FC0,$0000,$E0C0,$FF00,$0000,$0000
  5140.     dc.w    $C7C0,$EB80,$1000,$0000,$C7C0,$EB80,$1000,$0000
  5141.     dc.w    $C780,$EB00,$1000,$0000,$C700,$DA00,$2000,$0000
  5142.     dc.w    $6600,$3800,$4000,$0000,$3400,$3800,$0000,$0000
  5143.  
  5144. bat2:    dc.w    $3E00,$3E00,$0000,$0000,$007C,$007C,$0000,$0000
  5145.     dc.w    $7EE7,$3FFF,$4118,$0000,$E77E,$FFFC,$1882,$0000
  5146.     dc.w    $C2E7,$DFFF,$2118,$0000,$E743,$FFFB,$1884,$0000
  5147.     dc.w    $80E7,$E3FF,$1D18,$0000,$E701,$FFC7,$18B8,$0000
  5148.     dc.w    $00D8,$FFE7,$0118,$0000,$1B00,$E7FF,$1880,$0000
  5149.     dc.w    $FC98,$03E7,$0118,$0000,$193F,$E7C0,$1880,$0000
  5150.     dc.w    $7C67,$3F80,$0118,$0000,$E63E,$01FC,$1880,$0000
  5151.     dc.w    $3CE7,$1F00,$0118,$0000,$E73C,$00F8,$1880,$0000
  5152.     dc.w    $1EE7,$0D00,$0118,$0000,$E778,$00B0,$1880,$0000
  5153.     dc.w    $0E18,$01E7,$0118,$0000,$1870,$E780,$1880,$0000
  5154.  
  5155. bat1:    dc.w    $0B00,$0700,$0000,$0000,$1980,$0700,$0080,$0000
  5156.     dc.w    $38C0,$16C0,$0100,$0000,$78C0,$35C0,$0200,$0000
  5157.     dc.w    $F8C0,$75C0,$0200,$0000,$F8C0,$75C0,$0200,$0000
  5158.     dc.w    $C1C0,$3FC0,$0000,$0000,$0000,$FF80,$FF80,$0000
  5159.     dc.w    $6F80,$9F80,$0000,$0000,$7780,$8F80,$0000,$0000
  5160.     dc.w    $7380,$8F80,$0000,$0000,$8C00,$0380,$FF80,$0000
  5161.     dc.w    $8C00,$0380,$FF80,$0000,$7380,$8F80,$0000,$0000
  5162.     dc.w    $7380,$8F80,$0000,$0000,$7380,$8F80,$0000,$0000
  5163.     dc.w    $7380,$8F80,$0000,$0000,$7380,$8F80,$0000,$0000
  5164.     dc.w    $7380,$8F80,$0000,$0000,$8C00,$0380,$FF80,$0000
  5165.     dc.w    $8C00,$0380,$FF80,$0000,$7380,$8F80,$0000,$0000
  5166.     dc.w    $7780,$8F80,$0000,$0000,$6F80,$9F80,$0000,$0000
  5167.     dc.w    $0000,$FF80,$FF80,$0000,$C1C0,$3FC0,$0000,$0000
  5168.     dc.w    $F8C0,$75C0,$0200,$0000,$F8C0,$75C0,$0200,$0000
  5169.     dc.w    $78C0,$35C0,$0200,$0000,$38C0,$16C0,$0100,$0000
  5170.     dc.w    $1980,$0700,$0080,$0000,$0B00,$0700,$0000,$0000
  5171.  
  5172. bbrain:    dc.w    $7FFF,$8000,$0000,$0000,$FFFF,$0000,$0000,$0000
  5173.         dc.w    $8000,$FFF0,$0000,$000F,$1001,$0FFE,$0000,$F000
  5174.         dc.w    $8035,$FF85,$0005,$007A,$A201,$81FE,$8000,$7E00
  5175.         dc.w    $8434,$FC04,$0004,$03FB,$4B01,$483E,$4800,$B7C0
  5176.         dc.w    $8F55,$F844,$0044,$07BB,$A5C1,$241E,$2400,$DBE0
  5177.         dc.w    $9F2A,$F022,$0022,$0FDD,$5AF1,$420E,$4200,$BDF0
  5178.         dc.w    $B7DD,$E0C1,$00C1,$1F3E,$94E9,$8406,$8400,$7BF8
  5179.         dc.w    $FB20,$C100,$0100,$3EFF,$2315,$2312,$2310,$DCEC
  5180.         dc.w    $FB5E,$C31E,$031E,$3CE1,$58DD,$58DA,$58D8,$A724
  5181.         dc.w    $F021,$8021,$0021,$7FDE,$A4C3,$84C0,$84C0,$7B3E
  5182.         dc.w    $EBCA,$83C2,$03C2,$7C3D,$5B2F,$4220,$4220,$BDDE
  5183.         dc.w    $FBCA,$83C2,$03C2,$7C3D,$5B2F,$4220,$4220,$BDDE
  5184.         dc.w    $EE35,$8030,$0030,$7FCF,$B52F,$0420,$0420,$FBDE
  5185.         dc.w    $E449,$0009,$0009,$FFF6,$E4D9,$E4C0,$E4C0,$1B3F
  5186.         dc.w    $DB96,$0386,$0386,$FC79,$1224,$1224,$1224,$EDDB
  5187.         dc.w    $C561,$0060,$0060,$FF9F,$D529,$1128,$1128,$EED7
  5188.         dc.w    $ED8E,$000E,$000E,$FFF1,$522B,$1228,$1228,$EDD7
  5189.         dc.w    $C751,$0311,$0311,$FCEE,$9217,$9210,$9210,$6DEF
  5190.         dc.w    $CEAA,$0088,$0088,$FF77,$4CC9,$4CC0,$4CC0,$B33F
  5191.         dc.w    $FB95,$0084,$0084,$FF7B,$A0D1,$20C0,$20C0,$DF3F
  5192.         dc.w    $F54A,$8002,$0002,$7FFD,$2B83,$2380,$2380,$DC7E
  5193.         dc.w    $F465,$8001,$0001,$7FFE,$9887,$9880,$9880,$677E
  5194.         dc.w    $FA45,$8001,$0001,$7FFE,$192F,$1900,$1900,$E6FE
  5195.         dc.w    $FEC8,$8000,$0000,$7FFF,$617F,$0000,$0000,$FFFE
  5196.         dc.w    $FFA4,$C000,$0000,$3FFF,$CA5D,$0002,$0000,$FFFC
  5197.         dc.w    $FFF7,$C000,$0000,$3FFF,$9C5D,$0002,$0000,$FFFC
  5198.         dc.w    $FFCE,$E000,$0000,$1FFF,$59FD,$0006,$0000,$FFF8
  5199.         dc.w    $FFF6,$F000,$0000,$0FFF,$7FF9,$000E,$0000,$FFF0
  5200.         dc.w    $FFFF,$F800,$0000,$07FF,$FFF9,$001E,$0000,$FFE0
  5201.         dc.w    $FFFF,$FC00,$0000,$03FF,$FFF1,$003E,$0000,$FFC0
  5202.         dc.w    $BFFF,$FF80,$0000,$007F,$FFE1,$01FE,$0000,$FE00
  5203.         dc.w    $FFFF,$FFF0,$0000,$000F,$FFFE,$0FFF,$0000,$F000
  5204.  
  5205. lbrain: dc.w    $7FFF,$8000,$0000,$0000,$FFFF,$0000,$0000,$0000
  5206.         dc.w    $8000,$FFFF,$0000,$0000,$0001,$FFFE,$0000,$0000
  5207.         dc.w    $8000,$FFF0,$0000,$000F,$2001,$1FFE,$0000,$E000
  5208.         dc.w    $81B5,$FF85,$0005,$007A,$4401,$03FE,$0000,$FC00
  5209.         dc.w    $8234,$FE04,$0004,$01FB,$9601,$90FE,$9000,$6F00
  5210.         dc.w    $8F55,$FC44,$0044,$03BB,$4B01,$487E,$4800,$B780
  5211.         dc.w    $9B2A,$F822,$0022,$07DD,$B5C1,$843E,$8400,$7BC0
  5212.         dc.w    $BADD,$F0C1,$00C1,$0F3E,$29A1,$081E,$0800,$F7E0
  5213.         dc.w    $FD20,$E100,$0100,$1EFF,$4651,$464E,$4640,$B9B0
  5214.         dc.w    $FD5E,$E11E,$011E,$1EE1,$B171,$B16E,$B160,$4E90
  5215.         dc.w    $EA21,$C221,$0221,$3DDE,$4909,$0906,$0900,$F6F8
  5216.         dc.w    $E5CA,$C1C2,$01C2,$3E3D,$B6B9,$8486,$8480,$7B78
  5217.         dc.w    $EA35,$C830,$0830,$37CF,$6AB9,$0886,$0880,$F778
  5218.         dc.w    $F649,$8409,$0409,$7BF6,$C965,$C902,$C900,$36FC
  5219.         dc.w    $ED96,$8186,$0186,$7E79,$2491,$2492,$2490,$DB6C
  5220.         dc.w    $EA61,$8260,$0260,$7D9F,$AAA5,$22A2,$22A0,$DD5C
  5221.         dc.w    $F28E,$800E,$000E,$7FF1,$A4AD,$24A2,$24A0,$DB5C
  5222.         dc.w    $E951,$8111,$0111,$7EEE,$245D,$2442,$2440,$DBBC
  5223.         dc.w    $EFAA,$8088,$0088,$7F77,$9925,$9902,$9900,$66FC
  5224.         dc.w    $EE95,$8084,$0084,$7F7B,$414D,$4102,$4100,$BEFC
  5225.         dc.w    $FB6A,$C022,$0022,$3FDD,$5729,$4726,$4720,$B8D8
  5226.         dc.w    $F5D5,$C111,$0111,$3EEE,$3099,$3086,$3080,$CF78
  5227.         dc.w    $FDEA,$C002,$0002,$3FFD,$CAB9,$0886,$0880,$F778
  5228.         dc.w    $FE4D,$E004,$0004,$1FFB,$B471,$300E,$3000,$CFF0
  5229.         dc.w    $FDC3,$E000,$0000,$1FFF,$C931,$400E,$4000,$BFF0
  5230.         dc.w    $FFDC,$F000,$0000,$0FFF,$35E1,$001E,$0000,$FFE0
  5231.         dc.w    $FFF1,$F800,$0000,$07FF,$6BE1,$003E,$0000,$FFC0
  5232.         dc.w    $FF9E,$FC00,$0000,$03FF,$BBC1,$007E,$0000,$FF80
  5233.         dc.w    $FFF4,$FE00,$0000,$01FF,$BF81,$00FE,$0000,$FF00
  5234.         dc.w    $BFFF,$FF80,$0000,$007F,$FF01,$03FE,$0000,$FC00
  5235.         dc.w    $BFFF,$FFF0,$0000,$000F,$FC01,$1FFE,$0000,$E000
  5236.         dc.w    $FFFF,$FFFF,$0000,$0000,$FFFE,$FFFF,$0000,$0000
  5237.  
  5238. eyebrain:
  5239.     dc.w    $7FFF,$8000,$0000,$0000,$FFFF,$0000,$0000,$0000
  5240.     dc.w    $8000,$FFFF,$0000,$0000,$0001,$FFFE,$0000,$0000
  5241.     dc.w    $8000,$FFF0,$0000,$000F,$2001,$1FFE,$0000,$E000
  5242.     dc.w    $81B5,$FF85,$0005,$007A,$4401,$03FE,$0000,$FC00
  5243.     dc.w    $8234,$FE04,$0004,$01FB,$9601,$90FE,$9000,$6F00
  5244.     dc.w    $8F55,$FC44,$0044,$03BB,$4B01,$487E,$4800,$B780
  5245.     dc.w    $9B2E,$F826,$0026,$07D9,$F5C1,$C43E,$C400,$3BC0
  5246.     dc.w    $BAF0,$F0F0,$00F0,$0F0F,$39A1,$381E,$3800,$C7E0
  5247.     dc.w    $FD27,$E100,$0100,$1EFF,$C651,$064E,$0640,$F9B0
  5248.     dc.w    $FD5D,$E100,$0100,$1EFA,$F171,$016E,$0160,$3E90
  5249.     dc.w    $EA3B,$C200,$0200,$3DE4,$D909,$0106,$0100,$2EF8
  5250.     dc.w    $E47F,$C000,$0000,$3FC0,$EEB9,$0086,$0080,$1778
  5251.     dc.w    $EABE,$CA40,$0A03,$3580,$1EB9,$0086,$C080,$2378
  5252.     dc.w    $F4FF,$8400,$040F,$7BC0,$CE65,$0042,$F040,$03BC
  5253.     dc.w    $ED4F,$8480,$040F,$7B30,$EF51,$0052,$F050,$01AC
  5254.     dc.w    $ED6C,$8490,$041E,$7B00,$7565,$0062,$3860,$039C
  5255.     dc.w    $F768,$8490,$041C,$7B00,$376D,$0062,$3860,$019C
  5256.     dc.w    $EF68,$8490,$041C,$7B00,$3F5D,$0042,$3840,$01BC
  5257.     dc.w    $EB28,$8090,$001E,$7F40,$1F25,$0002,$7800,$01FC
  5258.     dc.w    $EBB4,$8048,$000F,$7F80,$2E4D,$1042,$F040,$03BC
  5259.     dc.w    $FB93,$C06C,$000F,$3F80,$C2A9,$34A6,$F0A0,$0B58
  5260.     dc.w    $F5C0,$C03F,$0003,$3FC0,$3499,$C886,$C080,$0778
  5261.     dc.w    $FDE2,$C01D,$0000,$3FE2,$08B9,$F086,$0080,$0F78
  5262.     dc.w    $FE7D,$E002,$0000,$1FFD,$3171,$C10E,$0100,$3EF0
  5263.     dc.w    $FD1F,$E000,$0000,$1FFF,$E331,$020E,$0200,$FDF0
  5264.     dc.w    $FFDF,$F000,$0000,$0FFF,$C5E1,$001E,$0000,$FFE0
  5265.     dc.w    $FFE0,$F800,$0000,$07FF,$0BE1,$003E,$0000,$FFC0
  5266.     dc.w    $FF9E,$FC00,$0000,$03FF,$BBC1,$007E,$0000,$FF80
  5267.     dc.w    $FFF4,$FE00,$0000,$01FF,$BF81,$00FE,$0000,$FF00
  5268.     dc.w    $BFFF,$FF80,$0000,$007F,$FF01,$03FE,$0000,$FC00
  5269.     dc.w    $BFFF,$FFF0,$0000,$000F,$FC01,$1FFE,$0000,$E000
  5270.     dc.w    $FFFF,$FFFF,$0000,$0000,$FFFE,$FFFF,$0000,$0000
  5271.  
  5272. spxy:   dc.w    0,176,190,0,175,190,0,174,190,0,173,190
  5273.         dc.w    0,172,190,0,171,190,0,170,190,0,169,190
  5274.         dc.w    0,168,190,0,167,190,0,166,190,0,165,190
  5275.         dc.w    0,164,190,0,163,190,0,162,190,0,163,190
  5276.         dc.w    0,162,190,0,161,190,0,160,190,0,159,190
  5277.         dc.w    0,158,190,0,157,190,0,156,190,0,155,190
  5278.         dc.w    0,154,190,0,153,190,0,152,190,0,151,190
  5279.         dc.w    0,150,190,0,149,190,0,148,190,0,147,190
  5280.         dc.w    0,146,190,0,145,190,0,144,190,0,143,190
  5281.         dc.w    0,142,190,0,141,190,0,140,190,0,139,190
  5282.         dc.w    0,138,190,0,137,190,0,136,190,0,135,190
  5283.         dc.w    0,134,190,0,133,190,0,132,190,0,131,190
  5284.         dc.w    0,130,190,0,129,190,0,128,190,0,127,190
  5285.         dc.w    0,126,190,0,125,190,0,124,190,0,123,190
  5286.         dc.w    0,122,190,0,121,190,0,120,190,0,119,190
  5287.         dc.w    0,118,190,0,117,190,0,116,190,0,115,190
  5288.         dc.w    0,114,190,0,113,190,0,112,190,0,111,190
  5289.         dc.w    0,110,190,0,109,190,0,108,190,0,107,190
  5290.         dc.w    0,106,190,0,105,190,0,104,190,0,103,190
  5291.         dc.w    0,102,190,0,101,190,0,100,190,0,99,190
  5292.         dc.w    0,98,190
  5293.         dc.w    0,97,190,0,96,190,0,95,190,0,94,190
  5294.         dc.w    0,93,190,0,92,190,0,91,190,0,90,190
  5295.         dc.w    0,89,190,0,88,190,0,87,190,0,86,190
  5296.         dc.w    0,85,190,0,84,190,0,83,190,0,82,190
  5297.         dc.w    0,81,190,0,80,190,0,79,190,0,78,190
  5298.         dc.w    0,77,190,0,76,190,0,75,190,0,74,190
  5299.         dc.w    0,73,190,0,72,190,0,71,190,0,70,190
  5300.         dc.w    0,69,190,0,68,190,0,67,190,0,66,190
  5301.         dc.w    0,65,190,0,64,190,0,63,190,0,62,190
  5302.         dc.w    0,61,190,0,60,190,0,59,190,0,58,190
  5303.         dc.w    0,57,190,0,56,190,0,55,190,0,54,190
  5304.         dc.w    0,53,190,0,52,190,0,51,190,0,50,190
  5305.         dc.w    0,49,190,0,48,190,0,47,190,0,46,190
  5306.         dc.w    0,45,190,0,44,190,0,43,190,0,42,190
  5307.         dc.w    0,41,190,0,40,190,0,39,190,0,38,190
  5308.         dc.w    0,37,190,0,36,190,0,35,190,0,34,190
  5309.         dc.w    0,33,190,0,32,190,0,31,190,0,30,190
  5310.         dc.w    0,29,190,0,28,190,0,27,190,0,26,190
  5311.         dc.w    0,25,190,0,24,190,0,23,190,0,22,190
  5312.         dc.w    0,21,190,0,20,190,0,19,190,0,18,190
  5313.         dc.w    0,17,190,0,16,190
  5314.         dc.w    1,0,151,1,0,150,1,0,149
  5315.         dc.w    1,0,148,1,0,147,1,0,146,1,0,145,1,0,144
  5316.         dc.w    1,0,143,1,0,142,1,0,141
  5317.         dc.w    1,0,140
  5318.         dc.w    1,0,139,1,0,138,1,0,137,1,0,136,1,0,135
  5319.         dc.w    1,0,134,1,0,133,1,0,132,1,0,131,1,0,130
  5320.         dc.w    1,0,129,1,0,128,1,0,127,1,0,126,1,0,125
  5321.         dc.w    1,0,124,1,0,123,1,0,122,1,0,121,1,0,120
  5322.         dc.w    1,0,119,1,0,118,1,0,117,1,0,116,1,0,115
  5323.         dc.w    1,0,114,1,0,113,1,0,112,1,0,111,1,0,110
  5324.         dc.w    1,0,109,1,0,108,1,0,107,1,0,106,1,0,105
  5325.         dc.w    1,0,104,1,0,103,1,0,102,1,0,101,1,0,100
  5326.         dc.w    1,0,99,1,0,98,1,0,97,1,0,96,1,0,95,1,0,94
  5327.         dc.w    1,0,93,1,0,92,1,0,91,1,0,90,1,0,89,1,0,88
  5328.         dc.w    1,0,87,1,0,86,1,0,85,1,0,84,1,0,83,1,0,82
  5329.         dc.w    1,0,81,1,0,80,1,0,79,1,0,78,1,0,77,1,0,76
  5330.         dc.w    1,0,75,1,0,74,1,0,73,1,0,72,1,0,71,1,0,70
  5331.         dc.w    1,0,69,1,0,68,1,0,67,1,0,66,1,0,65,1,0,64
  5332.         dc.w    1,0,63,1,0,62,1,0,61,1,0,60,1,0,59,1,0,58
  5333.         dc.w    1,0,57,1,0,56,1,0,55,1,0,54,1,0,53,1,0,52
  5334.         dc.w    1,0,51,1,0,50,1,0,49,1,0,48,1,0,47,1,0,46
  5335.         dc.w    1,0,45,1,0,44,1,0,43,1,0,42,1,0,41,1,0,40
  5336.         dc.w    1,0,39,1,0,38,1,0,37,1,0,36,1,0,35,1,0,34
  5337.         dc.w    1,0,33,1,0,32,1,0,31,1,0,30,1,0,29,1,0,28
  5338.         dc.w    1,0,27,1,0,26,1,0,25,1,0,24,1,0,23,1,0,22
  5339.         dc.w    1,0,21,1,0,20,1,0,19,1,0,18,1,0,17,1,0,16
  5340.         dc.w    2,16,0,2,17,0,2,18,0,2,19,0,2,20,0,2,21,0
  5341.         dc.w    2,22,0,2,23,0,2,24,0,2,25,0,2,26,0,2,27,0
  5342.         dc.w    2,28,0,2,29,0,2,30,0
  5343.         dc.w    2,31,0,2,32,0,2,33,0,2,34,0
  5344.         dc.w    2,35,0,2,36,0,2,37,0,2,38,0,2,39,0,2,40,0
  5345.         dc.w    2,41,0,2,42,0,2,43,0,2,44,0,2,45,0,2,46,0
  5346.         dc.w    2,47,0,2,48,0,2,49,0,2,50,0,2,51,0,2,52,0
  5347.         dc.w    2,53,0,2,54,0,2,55,0,2,56,0,2,57,0,2,58,0
  5348.         dc.w    2,59,0,2,60,0,2,61,0,2,62,0,2,63,0,2,64,0
  5349.         dc.w    2,65,0,2,66,0,2,67,0,2,68,0,2,69,0,2,70,0
  5350.         dc.w    2,71,0,2,72,0,2,73,0,2,74,0,2,75,0,2,76,0
  5351.         dc.w    2,77,0,2,78,0,2,79,0,2,80,0,2,81,0,2,82,0
  5352.         dc.w    2,83,0,2,84,0,2,85,0,2,86,0,2,87,0,2,88,0
  5353.         dc.w    2,89,0,2,90,0,2,91,0,2,92,0,2,93,0,2,94,0
  5354.         dc.w    2,95,0,2,96,0,2,97,0,2,98,0,2,99,0,2,100,0
  5355.         dc.w    2,101,0,2,102,0,2,103,0,2,104,0,2,105,0
  5356.         dc.w    2,106,0,2,107,0,2,108,0,2,109,0,2,110,0
  5357.         dc.w    2,111,0,2,112,0,2,113,0,2,114,0,2,115,0
  5358.         dc.w    2,116,0,2,117,0,2,118,0,2,119,0,2,120,0
  5359.         dc.w    2,121,0,2,122,0,2,123,0,2,124,0,2,125,0
  5360.         dc.w    2,126,0,2,127,0,2,128,0,2,129,0,2,130,0
  5361.         dc.w    2,131,0,2,132,0,2,133,0,2,134,0,2,135,0
  5362.         dc.w    2,136,0,2,137,0,2,138,0,2,139,0,2,140,0
  5363.         dc.w    2,141,0,2,142,0,2,143,0,2,144,0,2,145,0
  5364.         dc.w    2,146,0,2,147,0,2,148,0,2,149,0,2,150,0
  5365.         dc.w    2,151,0,2,152,0,2,153,0,2,154,0,2,155,0
  5366.         dc.w    2,156,0,2,157,0,2,158,0,2,159,0,2,160,0
  5367.         dc.w    2,161,0,2,162,0,2,163,0,2,164,0,2,165,0
  5368.         dc.w    2,166,0,2,167,0,2,168,0,2,169,0,2,170,0
  5369.         dc.w    2,171,0,2,172,0,2,173,0,2,174,0,2,175,0
  5370.         dc.w    2,176,0
  5371.         dc.w    3,214,16,3,214,17,3,214,18,3,214,19,3,214,20
  5372.         dc.w    3,214,21,3,214,22,3,214,23,3,214,24,3,214,25
  5373.         dc.w    3,214,26,3,214,27
  5374.         dc.w    3,214,28,3,214,29,3,214,30
  5375.         dc.w    3,214,31,3,214,32,3,214,33,3,214,34,3,214,35
  5376.         dc.w    3,214,36,3,214,37,3,214,38,3,214,39,3,214,40
  5377.         dc.w    3,214,41,3,214,42,3,214,43,3,214,44,3,214,45
  5378.         dc.w    3,214,46,3,214,47,3,214,48,3,214,49,3,214,50
  5379.         dc.w    3,214,51,3,214,52,3,214,53,3,214,54,3,214,55
  5380.         dc.w    3,214,56,3,214,57,3,214,58,3,214,59,3,214,60
  5381.         dc.w    3,214,61,3,214,62,3,214,63,3,214,64,3,214,65
  5382.         dc.w    3,214,66,3,214,67,3,214,68,3,214,69,3,214,70
  5383.         dc.w    3,214,71,3,214,72,3,214,73,3,214,74,3,214,75
  5384.         dc.w    3,214,76,3,214,77,3,214,78,3,214,79,3,214,80
  5385.         dc.w    3,214,81,3,214,82,3,214,83,3,214,84,3,214,85
  5386.         dc.w    3,214,86,3,214,87,3,214,88,3,214,89,3,214,90
  5387.         dc.w    3,214,91,3,214,92,3,214,93,3,214,94,3,214,95
  5388.         dc.w    3,214,96,3,214,97,3,214,98,3,214,99,3,214,100
  5389.         dc.w    3,214,101,3,214,102,3,214,103,3,214,104
  5390.         dc.w    3,214,105,3,214,106,3,214,107,3,214,108
  5391.         dc.w    3,214,109,3,214,110,3,214,111,3,214,112
  5392.         dc.w    3,214,113,3,214,114,3,214,115,3,214,116
  5393.         dc.w    3,214,117,3,214,118,3,214,119,3,214,120
  5394.         dc.w    3,214,121,3,214,122,3,214,123,3,214,124
  5395.         dc.w    3,214,125,3,214,126,3,214,127,3,214,128
  5396.         dc.w    3,214,129,3,214,130,3,214,131,3,214,132
  5397.         dc.w    3,214,133,3,214,134,3,214,135,3,214,136
  5398.         dc.w    3,214,137,3,214,138,3,214,139,3,214,140
  5399.         dc.w    3,214,141,3,214,142,3,214,143,3,214,144
  5400.         dc.w    3,214,145,3,214,146,3,214,147,3,214,148
  5401.         dc.w    3,214,149,3,214,150,3,214,151
  5402.  
  5403. ring:   dc.w    0,96,75,0,104,75,0,112,75,0,120,75,0,128,75
  5404.         dc.w    1,128,83,1,128,91,1,128,99,1,128,107,1,128,115
  5405.         dc.w    2,120,115,2,112,115,2,104,115,2,96,115,2,88,115
  5406.         dc.w    3,88,107,3,88,99,3,88,91,3,88,83,3,88,75
  5407. ring2:
  5408.         dc.w    80,67,88,67,96,67,104,67,112,67,120,67,128,67,136,67
  5409.         dc.w    136,75,136,83,136,91,136,99,136,107,136,115,136,123
  5410.         dc.w    128,123,120,123,112,123,104,123,96,123,88,123,80,123
  5411.         dc.w    80,115,80,107,80,99,80,91,80,83,80,75
  5412.  
  5413.  
  5414. *    pixels/scanline    = $000D (bytes/scanline: $0008)
  5415. *  # scanlines (height) = $0005
  5416. leftshot:
  5417.         dc.w    $0C00,$0000,$7C00,$0000,$6380,$3C40,$BFC0,$3C00
  5418.         dc.w    $7CC0,$43F8,$FFF8,$7FC0,$6380,$7C40,$FFC0,$7C00
  5419.         dc.w    $0C00,$0000,$7C00,$0000
  5420.  
  5421.  
  5422. *    pixels/scanline    = $0005 (bytes/scanline: $0008)
  5423. *  # scanlines (height) = $000D
  5424. downshot:
  5425.         dc.w    $0000,$2000,$2000,$0000,$0000,$2000,$2000,$0000
  5426.         dc.w    $0000,$2000,$2000,$0000,$2000,$7000,$7000,$2000
  5427.         dc.w    $7000,$2000,$7000,$2000,$5000,$2000,$7000,$2000
  5428.         dc.w    $5000,$2000,$7000,$2000,$A800,$5000,$F800,$7000
  5429.         dc.w    $A800,$5000,$F800,$7000,$2000,$5000,$F800,$7000
  5430.         dc.w    $7000,$5000,$F800,$7000,$7000,$6000,$E800,$6000
  5431.         dc.w    $0000,$0000,$7000,$0000
  5432.  
  5433. *    pixels/scanline    = $000D (bytes/scanline: $0008)
  5434. *  # scanlines (height) = $0005
  5435. rightshot:
  5436.         dc.w    $0180,$0000,$01F0,$0000,$0E30,$11E0,$1FE8,$01E0
  5437.         dc.w    $19F0,$FE10,$FFF8,$1FF0,$0E30,$11F0,$1FF8,$01F0
  5438.         dc.w    $0180,$0000,$01F0,$0000
  5439.  
  5440.  
  5441. *    pixels/scanline    = $0005 (bytes/scanline: $0008)
  5442. *  # scanlines (height) = $000D
  5443. upshot:
  5444.         dc.w    $0000,$0000,$7000,$0000,$7000,$6000,$E800,$6000
  5445.         dc.w    $7000,$5000,$F800,$7000,$2000,$5000,$F800,$7000
  5446.         dc.w    $A800,$5000,$F800,$7000,$A800,$5000,$F800,$7000
  5447.         dc.w    $5000,$2000,$7000,$2000,$5000,$2000,$7000,$2000
  5448.         dc.w    $7000,$2000,$7000,$2000,$2000,$7000,$7000,$2000
  5449.         dc.w    $0000,$2000,$2000,$0000,$0000,$2000,$2000,$0000
  5450.         dc.w    $0000,$2000,$2000,$0000
  5451.  
  5452.  
  5453. balls1:
  5454.  dc.w 0,0,0,0
  5455.  dc.w 12292,12296,12,12300
  5456.  dc.w 14390,12280,16410,26650
  5457.  dc.w 16368,16382,16414,30750
  5458.  dc.w 12,12,12300,12300
  5459.  dc.w 8204,12300,0,0
  5460.  dc.w 8200,12300,0,0
  5461.  dc.w 8204,12296,0,0
  5462.  dc.w 8204,12296,0,0
  5463.  dc.w 8204,12296,0,0
  5464.  dc.w 8204,12296,0,0
  5465.  dc.w 4104,8204,12288,12300
  5466.  dc.w 22572,26602,26640,26650
  5467.  dc.w 18414,32750,30736,30750
  5468.  dc.w 12288,12288,12300,12300
  5469.  dc.w 0,0,0,0
  5470. balls2:
  5471.  dc.w 0,0,0,0
  5472.  dc.w 4104,6160,24,6168
  5473.  dc.w 4332,8176,8244,15412
  5474.  dc.w 8160,8188,8252,15420
  5475.  dc.w 24,24,6168,6168
  5476.  dc.w 4120,6168,0,0
  5477.  dc.w 4112,6168,0,0
  5478.  dc.w 4120,6160,0,0
  5479.  dc.w 4120,6160,0,0
  5480.  dc.w 4120,6160,0,0
  5481.  dc.w 4120,6160,0,0
  5482.  dc.w 2064,4120,6144,6168
  5483.  dc.w 11480,13268,15392,15412
  5484.  dc.w 9180,16348,15392,15420
  5485.  dc.w 6144,6144,6168,6168
  5486.  dc.w 0,0,0,0
  5487.  
  5488. balls3:
  5489.  dc.w 0,0,0,0
  5490.  dc.w 2064,3104,48,3120
  5491.  dc.w 2520,4064,4200,7784
  5492.  dc.w 4032,4088,4216,7800
  5493.  dc.w 48,48,3120,3120
  5494.  dc.w 3120,3120,0,0
  5495.  dc.w 3104,3120,0,0
  5496.  dc.w 3120,3104,0,0
  5497.  dc.w 3120,3104,0,0
  5498.  dc.w 3120,3104,0,0
  5499.  dc.w 3120,3104,0,0
  5500.  dc.w 1056,2096,3072,3120
  5501.  dc.w 6064,6568,7744,7784
  5502.  dc.w 4536,8120,7744,7800
  5503.  dc.w 3072,3072,3120,3120
  5504.  dc.w 0,0,0,0
  5505.  
  5506. balls4:
  5507.  dc.w 0,0,0,0
  5508.  dc.w 1056,1600,96,1632
  5509.  dc.w 1200,1728,2512,4048
  5510.  dc.w 1664,1776,2544,4080
  5511.  dc.w 96,96,1632,1632
  5512.  dc.w 1632,1632,0,0
  5513.  dc.w 1600,1632,0,0
  5514.  dc.w 1632,1600,0,0
  5515.  dc.w 1632,1600,0,0
  5516.  dc.w 1632,1600,0,0
  5517.  dc.w 1632,1600,0,0
  5518.  dc.w 576,1120,1536,1632
  5519.  dc.w 2912,3408,3968,4048
  5520.  dc.w 2416,3952,3968,4080
  5521.  dc.w 1536,1536,1632,1632
  5522.  dc.w 0,0,0,0
  5523.  
  5524. balls5:
  5525.  dc.w 0,0,0,0
  5526.  dc.w 832,896,192,960
  5527.  dc.w 864,896,1440,1952
  5528.  dc.w 768,992,1504,2016
  5529.  dc.w 192,192,960,960
  5530.  dc.w 960,960,0,0
  5531.  dc.w 896,960,0,0
  5532.  dc.w 960,896,0,0
  5533.  dc.w 960,896,0,0
  5534.  dc.w 960,896,0,0
  5535.  dc.w 960,896,0,0
  5536.  dc.w 128,960,768,960
  5537.  dc.w 1216,1696,1792,1952
  5538.  dc.w 1248,1760,1792,2016
  5539.  dc.w 768,768,960,960
  5540.  dc.w 0,0,0,0
  5541.  
  5542. balls6:
  5543.  dc.w 0,0,0,0
  5544.  dc.w 128,256,384,384
  5545.  dc.w 704,768,832,832
  5546.  dc.w 512,960,960,960
  5547.  dc.w 384,384,384,384
  5548.  dc.w 384,384,0,0
  5549.  dc.w 256,384,0,0
  5550.  dc.w 384,256,0,0
  5551.  dc.w 384,256,0,0
  5552.  dc.w 384,256,0,0
  5553.  dc.w 384,256,0,0
  5554.  dc.w 256,384,0,384
  5555.  dc.w 384,320,512,832
  5556.  dc.w 448,448,512,960
  5557.  dc.w 0,0,384,384
  5558.  dc.w 0,0,0,0
  5559.  
  5560. balls7:
  5561.  dc.w 0,0,0,0
  5562.  dc.w 384,704,768,960
  5563.  dc.w 1472,1632,1664,1760
  5564.  dc.w 1120,2016,1920,2016
  5565.  dc.w 768,768,960,960
  5566.  dc.w 960,960,0,0
  5567.  dc.w 640,960,0,0
  5568.  dc.w 896,704,0,0
  5569.  dc.w 896,704,0,0
  5570.  dc.w 896,704,0,0
  5571.  dc.w 896,704,0,0
  5572.  dc.w 576,896,192,960
  5573.  dc.w 864,640,1120,1760
  5574.  dc.w 896,992,1120,2016
  5575.  dc.w 192,192,960,960
  5576.  dc.w 0,0,0,0
  5577.  
  5578. balls8:
  5579.  dc.w 0,0,0,0
  5580.  dc.w 576,1120,1536,1632
  5581.  dc.w 2912,3184,3456,3568
  5582.  dc.w 2160,3952,3968,4080
  5583.  dc.w 1536,1536,1632,1632
  5584.  dc.w 1632,1632,0,0
  5585.  dc.w 1088,1632,0,0
  5586.  dc.w 1600,1120,0,0
  5587.  dc.w 1600,1120,0,0
  5588.  dc.w 1600,1120,0,0
  5589.  dc.w 1600,1120,0,0
  5590.  dc.w 1056,1600,96,1632
  5591.  dc.w 1712,1472,2288,3568
  5592.  dc.w 1920,2032,2288,4080
  5593.  dc.w 96,96,1632,1632
  5594.  dc.w 0,0,0,0
  5595.  
  5596. balls9:
  5597.  dc.w 0,0,0,0
  5598.  dc.w 1056,2096,3072,3120
  5599.  dc.w 6048,6584,6720,6776
  5600.  dc.w 4536,8120,7744,7800
  5601.  dc.w 3072,3072,3120,3120
  5602.  dc.w 3120,3120,0,0
  5603.  dc.w 2080,3120,0,0
  5604.  dc.w 3104,2096,0,0
  5605.  dc.w 3104,2096,0,0
  5606.  dc.w 3104,2096,0,0
  5607.  dc.w 3104,2096,0,0
  5608.  dc.w 2064,3104,48,3120
  5609.  dc.w 3544,3040,4216,6776
  5610.  dc.w 4032,4088,4216,7800
  5611.  dc.w 48,48,3120,3120
  5612.  dc.w 0,0,0,0
  5613.  
  5614. balls10:
  5615.  dc.w 0,0,0,0
  5616.  dc.w 2064,4120,6144,6168
  5617.  dc.w 11472,13276,13344,13372
  5618.  dc.w 9180,16348,15392,15420
  5619.  dc.w 6144,6144,6168,6168
  5620.  dc.w 6160,6168,0,0
  5621.  dc.w 4112,6168,0,0
  5622.  dc.w 6160,4120,0,0
  5623.  dc.w 6160,4120,0,0
  5624.  dc.w 6160,4120,0,0
  5625.  dc.w 6160,4120,0,0
  5626.  dc.w 4104,6160,24,6168
  5627.  dc.w 6380,6128,8252,13372
  5628.  dc.w 8160,8188,8252,15420
  5629.  dc.w 24,24,6168,6168
  5630.  dc.w 0,0,0,0
  5631.  
  5632. balls11:
  5633.  dc.w 0,0,0,0
  5634.  dc.w 4104,8204,12288,12300
  5635.  dc.w 22572,26602,26640,26650
  5636.  dc.w 18414,32750,30736,30750
  5637.  dc.w 12288,12288,12300,12300
  5638.  dc.w 8200,12300,0,0
  5639.  dc.w 8204,12296,0,0
  5640.  dc.w 8204,12296,0,0
  5641.  dc.w 8204,12296,0,0
  5642.  dc.w 8204,12296,0,0
  5643.  dc.w 8204,12296,0,0
  5644.  dc.w 8196,12296,12,12300
  5645.  dc.w 12342,12280,16410,26650
  5646.  dc.w 16368,16382,16414,30750
  5647.  dc.w 12,12,12300,12300
  5648.  dc.w 0,0,0,0
  5649.  
  5650. balls12:
  5651.  dc.w 0,0,0,0
  5652.  dc.w 0,0,0,0
  5653.  dc.w 4104,8204,12288,12300
  5654.  dc.w 22572,26602,26640,26650
  5655.  dc.w 18414,32750,30736,30750
  5656.  dc.w 12288,12288,12300,12300
  5657.  dc.w 12300,12300,0,0
  5658.  dc.w 8200,12300,0,0
  5659.  dc.w 8204,12296,0,0
  5660.  dc.w 8204,12296,0,0
  5661.  dc.w 8196,12296,12,12300
  5662.  dc.w 8246,16376,16414,30750
  5663.  dc.w 16368,16382,16414,30750
  5664.  dc.w 12,12,12300,12300
  5665.  dc.w 0,0,0,0,0,0,0,0
  5666.  dc.w 0,0,0,0,0,0,0,0
  5667.  
  5668. balls13:
  5669.  dc.w 0,0,0,0
  5670.  dc.w 0,0,0,0
  5671.  dc.w 0,0,0,0
  5672.  dc.w 4104,8204,12288,12300
  5673.  dc.w 22572,26602,26640,26650
  5674.  dc.w 18414,32750,30736,30750
  5675.  dc.w 12288,12288,12300,12300
  5676.  dc.w 12300,12300,0,0
  5677.  dc.w 8200,12300,0,0
  5678.  dc.w 8196,12296,12,12300
  5679.  dc.w 8246,16376,16414,30750
  5680.  dc.w 16368,16382,16414,30750
  5681.  dc.w 12,12,12300,12300
  5682.  dc.w 0,0,0,0,0,0,0,0
  5683.  dc.w 0,0,0,0,0,0,0,0
  5684.  dc.w 0,0,0,0,0,0,0,0
  5685.  
  5686. balls14:
  5687.  dc.w 0,0,0,0
  5688.  dc.w 0,0,0,0
  5689.  dc.w 0,0,0,0
  5690.  dc.w 0,0,0,0
  5691.  dc.w 4104,8204,12288,12300
  5692.  dc.w 22572,26602,26640,26650
  5693.  dc.w 18414,32750,30736,30750
  5694.  dc.w 12288,12288,12300,12300
  5695.  dc.w 12,12,12300,12300
  5696.  dc.w 12276,16378,16414,30750
  5697.  dc.w 16368,16382,16414,30750
  5698.  dc.w 12,12,12300,12300
  5699.  dc.w 0,0,0,0
  5700.  dc.w 0,0,0,0
  5701.  dc.w 0,0,0,0
  5702.  dc.w 0,0,0,0
  5703.  
  5704. balls15:
  5705.  dc.w 0,0,0,0
  5706.  dc.w 0,0,0,0
  5707.  dc.w 0,0,0,0
  5708.  dc.w 0,0,0,0
  5709.  dc.w 0,0,0,0
  5710.  dc.w 4104,8204,12288,12300
  5711.  dc.w 22572,26602,26640,26650
  5712.  dc.w 18414,32750,30736,30750
  5713.  dc.w 16368,16370,28702,30750
  5714.  dc.w 16368,16382,16414,30750
  5715.  dc.w 12,12,12300,12300
  5716.  dc.w 0,0,0,0
  5717.  dc.w 0,0,0,0
  5718.  dc.w 0,0,0,0
  5719.  dc.w 0,0,0,0
  5720.  dc.w 0,0,0,0
  5721.  
  5722. balls16:
  5723.  dc.w 0,0,0,0
  5724.  dc.w 0,0,0,0
  5725.  dc.w 0,0,0,0
  5726.  dc.w 0,0,0,0
  5727.  dc.w 0,0,0,0
  5728.  dc.w 0,0,0,0
  5729.  dc.w 4104,8204,12288,12300
  5730.  dc.w 22572,26602,26640,26650
  5731.  dc.w 18414,32750,30736,30750
  5732.  dc.w 12288,12288,12300,12300
  5733.  dc.w 0,0,0,0
  5734.  dc.w 0,0,0,0
  5735.  dc.w 0,0,0,0
  5736.  dc.w 0,0,0,0
  5737.  dc.w 0,0,0,0
  5738.  dc.w 0,0,0,0
  5739.  
  5740. balls17:
  5741.  dc.w 0,0,0,0
  5742.  dc.w 0,0,0,0
  5743.  dc.w 0,0,0,0
  5744.  dc.w 0,0,0,0
  5745.  dc.w 0,0,0,0
  5746.  dc.w 8196,12296,12,12300
  5747.  dc.w 14322,16380,16414,30750
  5748.  dc.w 8184,12286,28690,30750
  5749.  dc.w 22572,26602,26640,26650
  5750.  dc.w 18414,32750,30736,30750
  5751.  dc.w 12288,12288,12300,12300
  5752.  dc.w 0,0,0,0
  5753.  dc.w 0,0,0,0
  5754.  dc.w 0,0,0,0
  5755.  dc.w 0,0,0,0
  5756.  dc.w 0,0,0,0
  5757.  
  5758. balls18:
  5759.  dc.w 0,0,0,0
  5760.  dc.w 0,0,0,0
  5761.  dc.w 0,0,0,0
  5762.  dc.w 0,0,0,0
  5763.  dc.w 8196,12296,12,12300
  5764.  dc.w 8246,16376,16414,30750
  5765.  dc.w 16368,16382,16414,30750
  5766.  dc.w 12,12,12300,12300
  5767.  dc.w 4104,8204,12288,12300
  5768.  dc.w 22572,26602,26640,26650
  5769.  dc.w 18414,32750,30736,30750
  5770.  dc.w 12288,12288,12300,12300
  5771.  dc.w 0,0,0,0
  5772.  dc.w 0,0,0,0
  5773.  dc.w 0,0,0,0
  5774.  dc.w 0,0,0,0
  5775.  
  5776. balls19:
  5777.  dc.w 0,0,0,0
  5778.  dc.w 0,0,0,0
  5779.  dc.w 0,0,0,0
  5780.  dc.w 8196,12296,12,12300
  5781.  dc.w 8246,16376,16414,30750
  5782.  dc.w 16368,16382,16414,30750
  5783.  dc.w 12,12,12300,12300
  5784.  dc.w 12300,12300,0,0
  5785.  dc.w 8200,12300,0,0
  5786.  dc.w 4104,8204,12288,12300
  5787.  dc.w 22572,26602,26640,26650
  5788.  dc.w 18414,32750,30736,30750
  5789.  dc.w 12288,12288,12300,12300
  5790.  dc.w 0,0,0,0
  5791.  dc.w 0,0,0,0
  5792.  dc.w 0,0,0,0
  5793.  
  5794. balls20:
  5795.  dc.w 0,0,0,0
  5796.  dc.w 0,0,0,0
  5797.  dc.w 8196,12296,12,12300
  5798.  dc.w 8246,16376,16414,30750
  5799.  dc.w 16368,16382,16414,30750
  5800.  dc.w 12,12,12300,12300
  5801.  dc.w 12300,12300,0,0
  5802.  dc.w 8200,12300,0,0
  5803.  dc.w 8204,12296,0,0
  5804.  dc.w 8204,12296,0,0
  5805.  dc.w 4104,8204,12288,12300
  5806.  dc.w 22572,26602,26640,26650
  5807.  dc.w 18414,32750,30736,30750
  5808.  dc.w 12288,12288,12300,12300
  5809.  dc.w 0,0,0,0
  5810.  dc.w 0,0,0,0
  5811.  
  5812.  
  5813. balls21:
  5814.  dc.w 0,0,0,0
  5815.  dc.w 8196,12296,12,12300
  5816.  dc.w 12342,12280,16410,26650
  5817.  dc.w 16368,16382,16414,30750
  5818.  dc.w 12,12,12300,12300
  5819.  dc.w 12300,12300,0,0
  5820.  dc.w 8200,12300,0,0
  5821.  dc.w 8204,12296,0,0
  5822.  dc.w 8204,12296,0,0
  5823.  dc.w 8204,12296,0,0
  5824.  dc.w 8204,12296,0,0
  5825.  dc.w 4104,8204,12288,12300
  5826.  dc.w 22572,26602,26640,26650
  5827.  dc.w 18414,32750,30736,30750
  5828.  dc.w 12288,12288,12300,12300
  5829.  dc.w 0,0,0,0
  5830.  
  5831.  
  5832.  
  5833.  
  5834. specialb:
  5835.         dc.b    $7F,$80,$00,$00,$81,$FE,$3C,$00
  5836.         dc.b    $AD,$C2,$7A,$00,$9D,$C2,$7E,$00
  5837.         dc.b    $8D,$C2,$7E,$00,$A5,$C2,$7E,$00
  5838.         dc.b    $C1,$FE,$3C,$00,$FE,$FF,$00,$00
  5839.  
  5840. animblocks:
  5841.         dc.b    0,0,0,0
  5842.         dc.b    0,0,0,0
  5843.         dc.b    0,0,0,0
  5844.         dc.b    0,0,0,0
  5845.         dc.b    0,0,0,0
  5846.         dc.b    0,0,0,0
  5847.         dc.b    0,0,0,0
  5848.         dc.b    0,0,0,0
  5849.  
  5850. anim5:  dc.b    0,0,0,0
  5851.         dc.b    0,0,0,0
  5852.         dc.b    0,0,0,0
  5853.         dc.b    $10,0,0,$10
  5854.         dc.b    $8,0,0,$18
  5855.         dc.b    0,0,0,0
  5856.         dc.b    0,0,0,0
  5857.         dc.b    0,0,0,0
  5858.  
  5859. anim4:  dc.b    $0,$0,$0,$0
  5860.         dc.b    $28,$0,$0,$38
  5861.         dc.b    $42,$0,$0,$7e
  5862.         dc.b    $16,$14,$14,$6a
  5863.         dc.b    $51,$10,$10,$6f
  5864.         dc.b    $1a,$0,$0,$3e
  5865.         dc.b    0,0,0,0
  5866.         dc.b    0,0,0,0
  5867.  
  5868. anim3:  dc.b    $38,$0,$0,$38
  5869.         dc.b    $5a,$10,$10,$6e
  5870.         dc.b    $c7,$4,$4,$fb
  5871.         dc.b    $b5,$34,$34,$cb
  5872.         dc.b    $9d,$1c,$1c,$e3
  5873.         dc.b    $4a,$8,$8,$76
  5874.         dc.b    $2e,$0,$0,$3e
  5875.         dc.b    0,0,0,0
  5876.  
  5877. anim2:  dc.b    $c,$0,$0,$3c
  5878.         dc.b    $5a,$10,$10,$6e
  5879.         dc.b    $5d,$5c,$5c,$a3
  5880.         dc.b    $b4,$34,$34,$cb
  5881.         dc.b    $bd,$bc,$bc,$43
  5882.         dc.b    $a9,$28,$28,$d7
  5883.         dc.b    $7e,$10,$10,$6e
  5884.         dc.b    0,0,0,0
  5885.  
  5886.  
  5887.         dc.b    $24,$0,$0,$3c
  5888.         dc.b    $16,$10,$10,$6f
  5889.         dc.b    $7d,$7c,$7c,$83
  5890.         dc.b    $3c,$3c,$3c,$c3
  5891.         dc.b    $99,$18,$18,$e7
  5892.         dc.b    $c1,$40,$40,$bf
  5893.         dc.b    $66,$0,$0,$7e
  5894.         dc.b    0,0,0,0
  5895.  
  5896.  
  5897. even
  5898. sprite1:
  5899.  dc.w 0,0,0,0,0,0,0,0
  5900.  dc.w 0,0,0,0,0,0,0,0
  5901.  dc.w 0,0,0,0,0,0,0,0
  5902.  dc.w 0,0,0,0,0,0,0,0
  5903.  dc.w 0,0,0,0,0,0,0,0
  5904.  dc.w 0,0,0,0,0,0,0,0
  5905.  dc.w 0,0,0,0,0,0,0,0
  5906.  dc.w 0,0,0,0,0,0,0,0
  5907.  dc.w 0,0,0,0,0,0,0,0
  5908.  dc.w 8,0,0,8,0,0,0,0
  5909.  dc.w 52,0,0,60,0,0,0,0
  5910.  dc.w 74,8,8,118,0,0,0,0
  5911.  dc.w 58,24,24,38,0,0,0,0
  5912.  dc.w 36,0,0,60,0,0,0,0
  5913.  dc.w 24,0,0,24,0,0,0,0
  5914.  dc.w 0,0,0,0,0,0,0,0
  5915.  dc.w 0,0,0,0,0,0,0,0
  5916.  dc.w 0,0,0,0,0,0,0,0
  5917.  dc.w 0,0,0,0,0,0,0,0
  5918.  dc.w 0,0,0,0,0,0,0,0
  5919.  dc.w 0,0,0,0,0,0,0,0
  5920.  dc.w 0,0,0,0,0,0,0,0
  5921.  dc.w 0,0,0,0,0,0,0,0
  5922.  dc.w 0,0,0,0,0,0,0,0
  5923.  
  5924.  
  5925. sprite2:
  5926.  dc.w 0,0,0,0,0,0,0,0
  5927.  dc.w 0,0,0,0,0,0,0,0
  5928.  dc.w 0,0,0,0,0,0,0,0
  5929.  dc.w 0,0,0,0,0,0,0,0
  5930.  dc.w 4,0,0,4,0,0,0,0
  5931.  dc.w 6,0,0,6,0,0,0,0
  5932.  dc.w 14,0,0,14,0,0,0,0
  5933.  dc.w 243,0,0,255,0,0,0,0
  5934.  dc.w 133,4,4,251,0,0,0,0
  5935.  dc.w 173,44,44,211,0,0,0,0
  5936.  dc.w 317,60,60,451,32768,0,0,32768
  5937.  dc.w 829,60,60,963,32768,0,0,32768
  5938.  dc.w 380,124,124,387,49152,0,0,49152
  5939.  dc.w 414,30,30,481,32768,0,0,32768
  5940.  dc.w 99,0,0,127,0,0,0,0
  5941.  dc.w 62,0,0,62,0,0,0,0
  5942.  dc.w 12,0,0,12,0,0,0,0
  5943.  dc.w 0,0,0,0,0,0,0,0
  5944.  dc.w 0,0,0,0,0,0,0,0
  5945.  dc.w 0,0,0,0,0,0,0,0
  5946.  dc.w 0,0,0,0,0,0,0,0
  5947.  dc.w 0,0,0,0,0,0,0,0
  5948.  dc.w 0,0,0,0,0,0,0,0
  5949.  dc.w 0,0,0,0,0,0,0,0
  5950.  
  5951.  
  5952. sprite3:
  5953.  dc.w 0,0,0,0,0,0,0,0
  5954.  dc.w 0,0,0,0,0,0,0,0
  5955.  dc.w 0,0,0,0,49152,0,0,49152
  5956.  dc.w 65,0,0,65,49152,0,0,49152
  5957.  dc.w 231,0,0,231,16384,0,0,49152
  5958.  dc.w 158,0,0,255,16384,0,0,49152
  5959.  dc.w 161,33,33,222,16384,0,0,49152
  5960.  dc.w 179,51,51,204,24576,0,0,57344
  5961.  dc.w 286,30,30,481,28672,0,0,61440
  5962.  dc.w 800,32,32,991,28672,0,0,61440
  5963.  dc.w 1954,34,34,2013,15360,0,0,64512
  5964.  dc.w 3107,35,35,4060,39936,32768,32768,31744
  5965.  dc.w 6641,497,497,7694,14336,0,0,63488
  5966.  dc.w 1053,29,29,2018,8192,0,0,57344
  5967.  dc.w 975,15,15,1008,40960,32768,32768,24576
  5968.  dc.w 44,12,12,51,40960,32768,32768,24576
  5969.  dc.w 51,0,0,63,8192,0,0,57344
  5970.  dc.w 23,0,0,31,8192,0,0,57344
  5971.  dc.w 29,0,0,29,57344,0,0,57344
  5972.  dc.w 8,0,0,8,12288,0,0,12288
  5973.  dc.w 8,0,0,8,0,0,0,0
  5974.  dc.w 0,0,0,0,0,0,0,0
  5975.  dc.w 0,0,0,0,0,0,0,0
  5976.  dc.w 0,0,0,0,0,0,0,0
  5977.  
  5978.  
  5979. sprite4:
  5980.  dc.w 0,0,0,0,0,0,0,0
  5981.  dc.w 0,0,0,0,5120,0,0,7168
  5982.  dc.w 3584,0,0,3584,50176,0,0,64512
  5983.  dc.w 1219,0,0,1987,38912,4096,4096,59392
  5984.  dc.w 1254,0,0,2023,26624,24576,24576,38912
  5985.  dc.w 1564,0,0,2047,24576,24576,24576,36864
  5986.  dc.w 1793,1,1,2046,49152,49152,49152,12288
  5987.  dc.w 801,33,33,990,40960,32768,32768,28672
  5988.  dc.w 816,48,48,975,55296,49152,49152,14336
  5989.  dc.w 31860,116,116,32651,18432,0,0,63488
  5990.  dc.w 14788,196,196,16187,29440,28672,28672,36608
  5991.  dc.w 18306,1922,1922,63613,26368,24576,24576,40704
  5992.  dc.w 2331,2331,2331,63204,17920,16384,16384,48640
  5993.  dc.w 25036,460,460,32307,23552,16384,16384,48128
  5994.  dc.w 28256,96,96,28575,18432,16384,16384,47104
  5995.  dc.w 1568,32,32,2015,6144,0,0,63488
  5996.  dc.w 387,3,3,508,4096,0,0,61440
  5997.  dc.w 321,65,65,446,40960,32768,32768,24576
  5998.  dc.w 262,0,0,511,7168,0,0,64512
  5999.  dc.w 831,0,0,1023,512,0,0,65024
  6000.  dc.w 2027,0,0,2027,61952,0,0,62976
  6001.  dc.w 768,0,0,768,28672,0,0,28672
  6002.  dc.w 0,0,0,0,0,0,0,0
  6003.  dc.w 0,0,0,0,0,0,0,0
  6004.  
  6005.  
  6006. sprite5:
  6007.  dc.w 0,0,0,0,0,0,0,0
  6008.  dc.w 0,0,0,0,13312,0,0,15360
  6009.  dc.w 3584,0,0,3584,50176,0,0,64512
  6010.  dc.w 1219,0,0,1987,39936,4096,4096,60416
  6011.  dc.w 1250,0,0,2019,27648,24576,24576,39936
  6012.  dc.w 1970,384,384,1651,26624,24576,24576,38912
  6013.  dc.w 991,192,192,831,49152,49152,49152,12288
  6014.  dc.w 449,0,0,511,45056,0,0,61440
  6015.  dc.w 4346,2,2,4349,57344,16384,16384,40960
  6016.  dc.w 31910,0,0,31975,65024,0,0,65024
  6017.  dc.w 32690,0,0,32755,62208,12288,12288,52992
  6018.  dc.w 51088,1536,1536,63985,26368,8192,8192,57088
  6019.  dc.w 47537,14336,14336,51185,17920,0,0,65024
  6020.  dc.w 58337,192,192,65313,31744,0,0,64512
  6021.  dc.w 64796,0,0,64892,49152,0,0,49152
  6022.  dc.w 1251,0,0,1279,49152,0,0,49152
  6023.  dc.w 438,0,0,511,0,0,0,49152
  6024.  dc.w 337,65,65,434,40960,32768,32768,24576
  6025.  dc.w 280,0,0,505,64512,57344,57344,7168
  6026.  dc.w 800,0,0,992,512,0,0,65024
  6027.  dc.w 2016,0,0,2016,61952,0,0,62976
  6028.  dc.w 768,0,0,768,28672,0,0,28672
  6029.  dc.w 0,0,0,0,0,0,0,0
  6030.  dc.w 0,0,0,0,0,0,0,0
  6031.  
  6032.  
  6033. sprite6: 
  6034.  dc.w 0,0,0,0,0,0,0,0
  6035.  dc.w 0,0,0,0,0,0,0,0
  6036.  dc.w 2048,0,0,2048,61440,0,0,61440
  6037.  dc.w 1985,0,0,1985,34816,0,0,63488
  6038.  dc.w 1121,0,0,2017,47104,12288,12288,51200
  6039.  dc.w 1344,256,256,1728,32768,0,0,61440
  6040.  dc.w 576,0,0,960,28672,0,0,28672
  6041.  dc.w 384,0,0,384,0,0,0,0
  6042.  dc.w 0,0,0,0,0,0,0,0
  6043.  dc.w 7200,0,0,7200,15872,0,0,15872
  6044.  dc.w 32368,0,0,32368,25344,0,0,32512
  6045.  dc.w 16976,0,0,32368,11008,2048,2048,14080
  6046.  dc.w 15984,14336,14336,18032,12800,0,0,15872
  6047.  dc.w 26720,0,0,30816,7168,0,0,7168
  6048.  dc.w 6144,0,0,6144,0,0,0,0
  6049.  dc.w 0,0,0,0,0,0,0,0
  6050.  dc.w 0,0,0,0,0,0,0,0
  6051.  dc.w 0,0,0,0,8192,0,0,8192
  6052.  dc.w 480,0,0,480,30720,0,0,30720
  6053.  dc.w 800,256,256,736,64512,12288,12288,52224
  6054.  dc.w 1504,256,256,1760,45056,8192,8192,53248
  6055.  dc.w 768,0,0,768,28672,0,0,28672
  6056.  dc.w 0,0,0,0,0,0,0,0
  6057.  dc.w 0,0,0,0,0,0,0,0
  6058.  
  6059.  
  6060. sprite7:
  6061.  dc.w 0,0,0,0,0,0,0,0
  6062.  dc.w 0,0,0,0,0,0,0,0
  6063.  dc.w 2048,0,0,2048,12288,0,0,12288
  6064.  dc.w 1280,0,0,1792,10240,0,0,14336
  6065.  dc.w 1280,0,0,1792,2048,0,0,6144
  6066.  dc.w 512,0,0,512,0,0,0,0
  6067.  dc.w 0,0,0,0,0,0,0,0
  6068.  dc.w 0,0,0,0,0,0,0,0
  6069.  dc.w 0,0,0,0,0,0,0,0
  6070.  dc.w 32,0,0,32,3584,0,0,3584
  6071.  dc.w 24672,0,0,24672,2816,0,0,3840
  6072.  dc.w 20480,0,0,28672,1792,0,0,1792
  6073.  dc.w 32768,0,0,57344,0,0,0,0
  6074.  dc.w 24576,0,0,24576,0,0,0,0
  6075.  dc.w 0,0,0,0,0,0,0,0
  6076.  dc.w 0,0,0,0,0,0,0,0
  6077.  dc.w 0,0,0,0,0,0,0,0
  6078.  dc.w 0,0,0,0,0,0,0,0
  6079.  dc.w 0,0,0,0,12288,0,0,12288
  6080.  dc.w 896,0,0,896,22528,4096,4096,26624
  6081.  dc.w 1152,0,0,1920,12288,0,0,12288
  6082.  dc.w 768,0,0,768,0,0,0,0
  6083.  dc.w 0,0,0,0,0,0,0,0
  6084.  dc.w 0,0,0,0,0,0,0,0
  6085.  
  6086.  
  6087. sprite8:
  6088.  dc.w 0,0,0,0,0,0,0,0
  6089.  dc.w 0,0,0,0,0,0,0,0
  6090.  dc.w 0,0,0,0,12288,0,0,12288
  6091.  dc.w 1024,0,0,1536,0,0,0,0
  6092.  dc.w 0,0,0,512,0,0,0,0
  6093.  dc.w 0,0,0,0,0,0,0,0
  6094.  dc.w 0,0,0,0,0,0,0,0
  6095.  dc.w 0,0,0,0,0,0,0,0
  6096.  dc.w 0,0,0,0,0,0,0,0
  6097.  dc.w 0,0,0,0,0,0,0,0
  6098.  dc.w 0,0,0,0,256,0,0,256
  6099.  dc.w 0,0,0,0,256,0,0,256
  6100.  dc.w 32768,0,0,49152,0,0,0,0
  6101.  dc.w 0,0,0,0,0,0,0,0
  6102.  dc.w 0,0,0,0,0,0,0,0
  6103.  dc.w 0,0,0,0,0,0,0,0
  6104.  dc.w 0,0,0,0,0,0,0,0
  6105.  dc.w 0,0,0,0,0,0,0,0
  6106.  dc.w 0,0,0,0,0,0,0,0
  6107.  dc.w 0,0,0,0,2048,0,0,2048
  6108.  dc.w 0,0,0,0,0,0,0,0
  6109.  dc.w 1536,0,0,1536,0,0,0,0
  6110.  dc.w 0,0,0,0,0,0,0,0
  6111.  dc.w 0,0,0,0,0,0,0,0
  6112.  
  6113. blank:
  6114.         dc.w 0,0,0,0,0,0,0,0
  6115.         dc.w 0,0,0,0,0,0,0,0
  6116.         dc.w 0,0,0,0,0,0,0,0
  6117.         dc.w 0,0,0,0,0,0,0,0
  6118.         dc.w 0,0,0,0,0,0,0,0
  6119.         dc.w 0,0,0,0,0,0,0,0
  6120.         dc.w 0,0,0,0,0,0,0,0
  6121.         dc.w 0,0,0,0,0,0,0,0
  6122.         dc.w 0,0,0,0,0,0,0,0
  6123.         dc.w 0,0,0,0,0,0,0,0
  6124.         dc.w 0,0,0,0,0,0,0,0
  6125.         dc.w 0,0,0,0,0,0,0,0
  6126.         dc.w 0,0,0,0,0,0,0,0
  6127.         dc.w 0,0,0,0,0,0,0,0
  6128.         dc.w 0,0,0,0,0,0,0,0
  6129.         dc.w 0,0,0,0,0,0,0,0
  6130.         dc.w 0,0,0,0,0,0,0,0
  6131.         dc.w 0,0,0,0,0,0,0,0
  6132.         dc.w 0,0,0,0,0,0,0,0
  6133.         dc.w 0,0,0,0,0,0,0,0
  6134.         dc.w 0,0,0,0,0,0,0,0
  6135.         dc.w 0,0,0,0,0,0,0,0
  6136.         dc.w 0,0,0,0,0,0,0,0
  6137.         dc.w 0,0,0,0,0,0,0,0
  6138.  
  6139. ball:    dc.w    $0000,$7000,$0000,$0000,$7000,$C800,$0000,$0000
  6140.     dc.w    $5000,$E800,$0000,$0000,$7000,$F800,$0000,$0000
  6141.     dc.w    $0000,$7000,$0000,$0000
  6142.  
  6143.  
  6144. gore1:
  6145.  dc.w 768,2016,1248,2016
  6146.  dc.w 4856,7448,7904,8184
  6147.  dc.w 5992,6292,12140,16380
  6148.  dc.w 30572,30866,18286,32766
  6149.  dc.w 19388,29762,31630,32718
  6150.  dc.w 52787,61901,65026,65487
  6151.  dc.w 13789,14883,50652,65535
  6152.  dc.w 15246,13425,52111,65535
  6153.  dc.w 53164,61523,65453,65535
  6154.  dc.w 58485,64395,64630,65535
  6155.  dc.w 60333,64595,62382,65535
  6156.  dc.w 32160,32350,29614,32766
  6157.  dc.w 24786,26622,32558,32766
  6158.  dc.w 3732,4092,16236,16380
  6159.  dc.w 8032,8032,8184,8184
  6160.  dc.w 1600,1600,2016,2016
  6161.  
  6162. gore2:
  6163.  dc.w 96,2016,1920,2016
  6164.  dc.w 2976,3160,6072,8184
  6165.  dc.w 12220,14404,14264,16380
  6166.  dc.w 18590,30562,30876,32766
  6167.  dc.w 20016,29134,32258,32718
  6168.  dc.w 51255,63433,63494,65487
  6169.  dc.w 14175,14497,51038,65535
  6170.  dc.w 20104,29047,65161,65535
  6171.  dc.w 51638,63049,63927,65535
  6172.  dc.w 65300,63723,59159,65535
  6173.  dc.w 57172,55467,59223,65535
  6174.  dc.w 216,3886,32470,32766
  6175.  dc.w 6950,8190,31962,32766
  6176.  dc.w 15456,15864,16284,16380
  6177.  dc.w 7576,7576,8184,8184
  6178.  dc.w 448,448,2016,2016
  6179.  
  6180. gore3:
  6181.  dc.w 768,2016,1248,2016
  6182.  dc.w 4856,7448,7904,8184
  6183.  dc.w 9960,14612,16108,16380
  6184.  dc.w 20268,28882,32558,32766
  6185.  dc.w 13246,15426,17292,32718
  6186.  dc.w 52405,62283,64644,65487
  6187.  dc.w 53082,61605,65371,65535
  6188.  dc.w 49294,65393,61583,65535
  6189.  dc.w 56494,62289,60591,65535
  6190.  dc.w 38304,39519,60835,65535
  6191.  dc.w 9519,15059,64812,65535
  6192.  dc.w 32096,32414,29550,32766
  6193.  dc.w 28818,30718,32622,32766
  6194.  dc.w 1684,2044,16236,16380
  6195.  dc.w 3696,3696,8184,8184
  6196.  dc.w 1632,1632,2016,2016
  6197.  
  6198. bl1s1:
  6199.     dc.w    $0E00,$0000,$0000,$0000,$1E00,$0C00,$0000,$0000
  6200.     dc.w    $3C00,$1E00,$0000,$0000,$7C00,$3E00,$0000,$0000
  6201.     dc.w    $FC00,$0200,$0000,$0000,$0000,$FE00,$0000,$0000
  6202.     dc.w    $8000,$E200,$1C00,$0000,$C200,$DE00,$2000,$0000
  6203.     dc.w    $7E00,$3E00,$4000,$0000,$3E00,$3E00,$0000,$0000
  6204.  
  6205. bl1s2:
  6206.     dc.w    $0000,$0000,$0180,$0000,$C243,$C243,$0180,$0000
  6207.     dc.w    $FE7F,$BC3D,$0180,$0000,$FE7F,$8181,$0000,$0000
  6208.     dc.w    $8001,$FFFF,$0000,$0000,$8001,$FFFF,$0000,$0000
  6209.     dc.w    $C003,$C003,$3FFC,$0000,$FFFF,$FFFF,$0000,$0000
  6210.     dc.w    $FFFF,$FFFF,$0000,$0000
  6211.  
  6212. bl1s3:
  6213.     dc.w    $E000,$0000,$0000,$0000,$F000,$6000,$0000,$0000
  6214.     dc.w    $7800,$F000,$0000,$0000,$7C00,$F800,$0000,$0000
  6215.     dc.w    $7E00,$8000,$0000,$0000,$0000,$FE00,$0000,$0000
  6216.     dc.w    $0200,$8E00,$7000,$0000,$8600,$F600,$0800,$0000
  6217.     dc.w    $FC00,$F800,$0400,$0000,$F800,$F800,$0000,$0000
  6218.  
  6219.  
  6220. bl2s1:
  6221.     dc.w    $0B00,$0700,$0000,$0000,$1980,$0700,$0080,$0000
  6222.     dc.w    $38C0,$16C0,$0100,$0000,$78C0,$35C0,$0200,$0000
  6223.     dc.w    $F8C0,$75C0,$0200,$0000,$F8C0,$75C0,$0200,$0000
  6224.     dc.w    $C1C0,$3FC0,$0000,$0000
  6225.  
  6226. bl2s2:    dc.w    $7F80,$7F80,$0000,$0000,$7380,$4F80,$0000,$0000
  6227.     dc.w    $3180,$2D80,$0200,$0000,$3180,$2D80,$0200,$0000
  6228.     dc.w    $3180,$2D80,$0200,$0000,$3180,$2D80,$0200,$0000
  6229.     dc.w    $7180,$4D80,$0200,$0000,$0180,$1D80,$E200,$0000
  6230.     dc.w    $0180,$1D80,$E200,$0000,$7180,$4D80,$0200,$0000
  6231.     dc.w    $3180,$2D80,$0200,$0000,$3180,$2D80,$0200,$0000
  6232.     dc.w    $3180,$2D80,$0200,$0000,$3180,$2D80,$0200,$0000
  6233.     dc.w    $7380,$4F80,$0000,$0000,$7F80,$7F80,$0000,$0000
  6234.  
  6235. bl2s3:    dc.w    $C1C0,$3FC0,$0000,$0000,$F8C0,$75C0,$0200,$0000
  6236.     dc.w    $F8C0,$75C0,$0200,$0000,$78C0,$35C0,$0200,$0000
  6237.     dc.w    $38C0,$16C0,$0100,$0000,$1980,$0700,$0080,$0000
  6238.     dc.w    $0B00,$0700,$0000,$0000
  6239.  
  6240. bl3s1:    dc.w    $3E00,$3E00,$0000,$0000,$7E00,$3E00,$4000,$0000
  6241.     dc.w    $C200,$DE00,$2000,$0000,$8000,$E200,$1C00,$0000
  6242.     dc.w    $0000,$FE00,$0000,$0000,$FC00,$0200,$0000,$0000
  6243.     dc.w    $7C00,$3E00,$0000,$0000,$3C00,$1E00,$0000,$0000
  6244.     dc.w    $1E00,$0C00,$0000,$0000,$0E00,$0000,$0000,$0000
  6245.  
  6246. bl3s2:    dc.w    $FFFF,$FFFF,$0000,$0000,$FFFF,$FFFF,$0000,$0000
  6247.     dc.w    $C003,$C003,$3FFC,$0000,$8001,$FFFF,$0000,$0000
  6248.     dc.w    $8001,$FFFF,$0000,$0000,$FE7F,$8181,$0000,$0000
  6249.     dc.w    $FE7F,$BC3D,$0180,$0000,$C243,$C243,$0180,$0000
  6250.     dc.w    $0000,$0000,$0180,$0000
  6251.  
  6252. bl3s3:    dc.w    $F800,$F800,$0000,$0000,$FC00,$F800,$0400,$0000
  6253.     dc.w    $8600,$F600,$0800,$0000,$0200,$8E00,$7000,$0000
  6254.     dc.w    $0000,$FE00,$0000,$0000,$7E00,$8000,$0000,$0000
  6255.     dc.w    $7C00,$F800,$0000,$0000,$7800,$F000,$0000,$0000
  6256.     dc.w    $F000,$6000,$0000,$0000,$E000,$0000,$0000,$0000
  6257.  
  6258. bl4s1:    dc.w    $3400,$3800,$0000,$0000,$6600,$3800,$4000,$0000
  6259.     dc.w    $C700,$DA00,$2000,$0000,$C780,$EB00,$1000,$0000
  6260.     dc.w    $C7C0,$EB80,$1000,$0000,$C7C0,$EB80,$1000,$0000
  6261.     dc.w    $E0C0,$FF00,$0000,$0000
  6262.  
  6263. bl4s2:    dc.w    $FF00,$FF00,$0000,$0000,$E700,$F900,$0000,$0000
  6264.     dc.w    $C600,$DA00,$2000,$0000,$C600,$DA00,$2000,$0000
  6265.     dc.w    $C600,$DA00,$2000,$0000,$C600,$DA00,$2000,$0000
  6266.     dc.w    $C700,$D900,$2000,$0000,$C000,$DC00,$2380,$0000
  6267.     dc.w    $C000,$DC00,$2380,$0000,$C700,$D900,$2000,$0000
  6268.     dc.w    $C600,$DA00,$2000,$0000,$C600,$DA00,$2000,$0000
  6269.     dc.w    $C600,$DA00,$2000,$0000,$C600,$DA00,$2000,$0000
  6270.     dc.w    $E700,$F900,$0000,$0000,$FF00,$FF00,$0000,$0000
  6271.  
  6272. bl4s3:    dc.w    $E0C0,$FF00,$0000,$0000,$C7C0,$EB80,$1000,$0000
  6273.     dc.w    $C7C0,$EB80,$1000,$0000,$C780,$EB00,$1000,$0000
  6274.     dc.w    $C700,$DA00,$2000,$0000,$6600,$3800,$4000,$0000
  6275.     dc.w    $3400,$3800,$0000,$0000
  6276.  
  6277.  
  6278. appear1:
  6279.     dc.w    0,0,0,0,0,0,0,0
  6280.     dc.w    0,0,0,0,0,0,0,0
  6281.     dc.w    0,0,0,0,0,0,0,0
  6282.     dc.w    0,0,0,0,0,0,0,0
  6283.     dc.w    0,0,0,0,0,0,0,0
  6284.     dc.w    0,0,0,0,0,0,0,0
  6285.     dc.w    0,0,0,0,0,0,0,0
  6286.     dc.w    0,0,0,0,0,0,0,0
  6287.     dc.w    0,0,0,0,0,0,0,0
  6288.     dc.w    0,0,0,0,0,0,0,0
  6289.     dc.w    0,0,0,0,0,0,0,0
  6290.     dc.w    0,0,0,0,0,0,0,0
  6291.     dc.w    0,0,0,0,0,0,0,0
  6292.     dc.w    0,0,0,0,0,0,0,0
  6293.     dc.w    0,0,0,0,0,0,0,0
  6294.     dc.w    0,0,0,0,0,0,0,0
  6295.     dc.w    0,0,0,0,0,0,0,0
  6296.     dc.w    0,0,0,0,0,0,0,0
  6297.     dc.w    0,0,0,0,0,0,0,0
  6298.     dc.w    0,0,0,0,0,0,0,0
  6299.     dc.w    0,0,0,0,0,0,0,0
  6300.     dc.w    0,0,0,0,0,0,0,0
  6301.     dc.w    0,0,0,0,0,0,0,0
  6302.     dc.w    0,0,0,0,0,0,0,0
  6303.     dc.w    0,0,0,0,0,0,0,0
  6304.     dc.w    0,0,0,0,0,0,0,0
  6305.     dc.w    0,0,0,0,0,0,0,0
  6306.     dc.w    0,0,0,0,0,0,0,0
  6307.     dc.w    0,0,0,0,0,0,0,0
  6308.     dc.w    0,0,0,0,0,0,0,0
  6309.     dc.w    0,0,0,0,0,0,0,0
  6310.     dc.w    0,0,0,0,0,0,0,0
  6311.  
  6312.  
  6313. appear2:
  6314.     dc.w    0,0,0,0,0,0,0,0
  6315.     dc.w    0,0,0,0,0,0,0,0
  6316.     dc.w    0,0,0,0,0,0,0,0
  6317.     dc.w    0,0,0,0,0,0,0,0
  6318.     dc.w    0,0,0,0,0,0,0,0
  6319.  dc.w 0,0,0,0,0,0,0,0
  6320.  dc.w 0,0,0,0,0,0,0,0
  6321.  dc.w 0,0,0,0,0,0,0,0
  6322.  dc.w 0,0,0,0,0,0,0,8192
  6323.  dc.w 0,0,0,0,0,0,0,0
  6324.  dc.w 8,0,0,8,0,0,0,0
  6325.  dc.w 0,0,0,0,0,0,0,0
  6326.  dc.w 0,0,0,0,0,0,0,4096
  6327.  dc.w 0,0,0,0,0,0,0,0
  6328.  dc.w 16,16,0,16,0,0,0,0
  6329.  dc.w 0,0,0,0,0,0,0,128
  6330.  dc.w 0,0,0,4,0,0,0,0
  6331.  dc.w 0,0,0,0,1024,1024,1024,8320
  6332.  dc.w 0,0,0,0,0,0,0,0
  6333.  dc.w 2,0,0,2,0,0,0,0
  6334.  dc.w 0,0,0,8,0,0,0,16384
  6335.  dc.w 0,0,0,0,0,0,0,0
  6336.  dc.w 0,0,0,0,0,0,0,0
  6337.  dc.w 0,0,0,0,0,0,0,0
  6338.  dc.w 0,0,0,0,0,0,0,0
  6339.  dc.w 0,0,0,0,0,0,0,0
  6340.  dc.w 0,0,0,0,0,0,0,0
  6341.     dc.w    0,0,0,0,0,0,0,0
  6342.     dc.w    0,0,0,0,0,0,0,0
  6343.     dc.w    0,0,0,0,0,0,0,0
  6344.     dc.w    0,0,0,0,0,0,0,0
  6345.     dc.w    0,0,0,0,0,0,0,0
  6346.  
  6347. appear3:
  6348.     dc.w    0,0,0,0,0,0,0,0
  6349.     dc.w    0,0,0,0,0,0,0,0
  6350.     dc.w    0,0,0,0,0,0,0,0
  6351.     dc.w    0,0,0,0,0,0,0,0
  6352.     dc.w    0,0,0,0,0,0,0,0
  6353.  dc.w 0,0,0,0,16384,16384,16384,0
  6354.  dc.w 0,0,0,2,0,0,0,0
  6355.  dc.w 32,0,0,40,0,0,0,0
  6356.  dc.w 0,0,0,4,0,0,0,8192
  6357.  dc.w 0,0,0,0,0,0,0,512
  6358.  dc.w 8,0,0,8,4096,0,0,12288
  6359.  dc.w 2,0,0,34,0,0,0,2048
  6360.  dc.w 0,0,0,512,0,0,0,4672
  6361.  dc.w 128,0,0,128,0,0,0,0
  6362.  dc.w 16,16,0,16,2048,2048,0,2304
  6363.  dc.w 4,4,0,20,0,0,0,128
  6364.  dc.w 1,0,0,5,0,0,0,0
  6365.  dc.w 0,0,0,0,1024,1024,1024,8320
  6366.  dc.w 1,0,0,257,256,0,0,256
  6367.  dc.w 34,0,0,50,0,0,0,0
  6368.  dc.w 0,0,0,8,0,0,0,16384
  6369.  dc.w 0,0,0,0,0,0,0,0
  6370.  dc.w 4,0,0,4,2048,2048,2048,0
  6371.  dc.w 8,0,0,8,32768,0,0,32768
  6372.  dc.w 0,0,0,1,0,0,0,0
  6373.  dc.w 0,0,0,0,0,0,0,0
  6374.  dc.w 0,0,0,0,0,0,0,0
  6375.     dc.w    0,0,0,0,0,0,0,0
  6376.     dc.w    0,0,0,0,0,0,0,0
  6377.     dc.w    0,0,0,0,0,0,0,0
  6378.     dc.w    0,0,0,0,0,0,0,0
  6379.     dc.w    0,0,0,0,0,0,0,0
  6380.  
  6381.  
  6382. appear4:
  6383.     dc.w    0,0,0,0,0,0,0,0
  6384.     dc.w    0,0,0,0,0,0,0,0
  6385.     dc.w    0,0,0,0,0,0,0,0
  6386.     dc.w    0,0,0,0,0,0,0,0
  6387.     dc.w    0,0,0,0,0,0,0,0
  6388.  dc.w 0,0,0,0,20480,20480,20480,0
  6389.  dc.w 0,0,0,2,0,0,0,0
  6390.  dc.w 32,0,0,40,36864,32768,32768,0
  6391.  dc.w 0,0,0,36,1024,1024,1024,8192
  6392.  dc.w 65,0,0,65,16384,0,0,16896
  6393.  dc.w 168,0,0,168,4096,0,0,12288
  6394.  dc.w 2,0,0,546,32768,0,0,34816
  6395.  dc.w 0,0,0,517,0,0,0,4672
  6396.  dc.w 128,0,0,132,0,0,0,49280
  6397.  dc.w 16,16,0,16,2048,2048,0,2304
  6398.  dc.w 4,4,0,20,256,0,0,2432
  6399.  dc.w 65,0,0,69,0,0,0,4096
  6400.  dc.w 0,0,0,64,33792,33792,33792,8320
  6401.  dc.w 17,0,0,285,256,0,0,2304
  6402.  dc.w 34,0,0,50,0,0,0,36864
  6403.  dc.w 32,0,0,168,0,0,0,18432
  6404.  dc.w 16,0,0,16,32768,0,0,32768
  6405.  dc.w 4,0,0,4,2048,2048,2048,0
  6406.  dc.w 8,0,0,8,32768,0,0,40960
  6407.  dc.w 0,0,0,1,8192,8192,8192,0
  6408.  dc.w 0,0,0,0,0,0,0,0
  6409.  dc.w 0,0,0,0,0,0,0,0
  6410.     dc.w    0,0,0,0,0,0,0,0
  6411.     dc.w    0,0,0,0,0,0,0,0
  6412.     dc.w    0,0,0,0,0,0,0,0
  6413.     dc.w    0,0,0,0,0,0,0,0
  6414.     dc.w    0,0,0,0,0,0,0,0
  6415.  
  6416.  
  6417. appear5:
  6418.     dc.w    0,0,0,0,0,0,0,0
  6419.     dc.w    0,0,0,0,0,0,0,0
  6420.     dc.w    0,0,0,0,0,0,0,0
  6421.     dc.w    0,0,0,0,0,0,0,0
  6422.     dc.w    0,0,0,0,0,0,0,0
  6423.  dc.w 2,2,2,0,20480,20480,20480,0
  6424.  dc.w 0,0,0,10,0,0,0,0
  6425.  dc.w 96,0,0,105,53248,49152,49152,1024
  6426.  dc.w 0,0,0,45,1024,1024,1024,24576
  6427.  dc.w 195,0,0,227,16384,0,0,18944
  6428.  dc.w 184,0,0,184,5120,1024,1024,45568
  6429.  dc.w 10,0,0,554,49152,0,0,51264
  6430.  dc.w 128,0,0,645,1280,256,256,13888
  6431.  dc.w 128,0,0,420,256,256,256,50304
  6432.  dc.w 16,16,0,49,2560,2560,512,3328
  6433.  dc.w 69,4,0,85,12544,12288,0,14720
  6434.  dc.w 81,0,0,93,0,0,0,12288
  6435.  dc.w 0,0,0,64,33792,33792,33792,8832
  6436.  dc.w 145,0,0,477,33024,32768,32768,6400
  6437.  dc.w 34,0,0,50,1024,1024,1024,37376
  6438.  dc.w 36,0,0,172,0,0,0,26624
  6439.  dc.w 17,0,0,17,51200,2048,2048,49152
  6440.  dc.w 20,0,0,20,18432,18432,18432,0
  6441.  dc.w 13,0,0,13,32768,0,0,40960
  6442.  dc.w 0,0,0,1,8192,8192,8192,0
  6443.  dc.w 2,0,0,2,0,0,0,0
  6444.  dc.w 0,0,0,0,0,0,0,0
  6445.     dc.w    0,0,0,0,0,0,0,0
  6446.     dc.w    0,0,0,0,0,0,0,0
  6447.     dc.w    0,0,0,0,0,0,0,0
  6448.     dc.w    0,0,0,0,0,0,0,0
  6449.     dc.w    0,0,0,0,0,0,0,0
  6450.  
  6451.  
  6452. appear6:
  6453.     dc.w    0,0,0,0,0,0,0,0
  6454.     dc.w    0,0,0,0,0,0,0,0
  6455.     dc.w    0,0,0,0,0,0,0,0
  6456.     dc.w    0,0,0,0,0,0,0,0
  6457.     dc.w    0,0,0,0,0,0,0,0
  6458.  dc.w 2,2,2,8,53248,53248,53248,0
  6459.  dc.w 0,0,0,15,1024,1024,1024,30720
  6460.  dc.w 96,0,0,107,61952,57856,57856,1024
  6461.  dc.w 0,0,0,47,3328,1280,1280,29184
  6462.  dc.w 195,0,0,251,17408,1024,1024,27136
  6463.  dc.w 184,0,0,191,5120,1024,1024,45568
  6464.  dc.w 10,0,0,618,57344,0,0,60992
  6465.  dc.w 128,0,0,709,1280,256,256,30272
  6466.  dc.w 128,0,0,420,2304,256,256,60544
  6467.  dc.w 80,24,0,121,2560,2560,512,3328
  6468.  dc.w 205,12,0,477,12544,12288,0,31104
  6469.  dc.w 81,0,0,351,3584,3072,3072,12800
  6470.  dc.w 136,0,0,202,33792,33792,33792,25216
  6471.  dc.w 147,0,0,479,33024,32768,32768,6400
  6472.  dc.w 34,0,0,114,1024,1024,1024,37632
  6473.  dc.w 36,0,0,175,1024,1024,1024,26624
  6474.  dc.w 17,0,0,21,51200,2048,2048,49152
  6475.  dc.w 21,1,1,20,26624,18432,18432,8192
  6476.  dc.w 13,0,0,15,36864,4096,4096,40960
  6477.  dc.w 0,0,0,3,8192,8192,8192,16384
  6478.  dc.w 2,0,0,2,16384,0,0,16384
  6479.  dc.w 0,0,0,0,0,0,0,0
  6480.     dc.w    0,0,0,0,0,0,0,0
  6481.     dc.w    0,0,0,0,0,0,0,0
  6482.     dc.w    0,0,0,0,0,0,0,0
  6483.     dc.w    0,0,0,0,0,0,0,0
  6484.     dc.w    0,0,0,0,0,0,0,0
  6485.  
  6486.  
  6487. appear7:
  6488.     dc.w    0,0,0,0,0,0,0,0
  6489.     dc.w    0,0,0,0,0,0,0,0
  6490.     dc.w    0,0,0,0,0,0,0,0
  6491.     dc.w    0,0,0,0,0,0,0,0
  6492.     dc.w    0,0,0,0,0,0,0,0
  6493.  dc.w 3,3,3,12,61440,61440,61440,0
  6494.  dc.w 16,0,0,29,1024,1024,1024,45056
  6495.  dc.w 32,0,0,63,59904,59904,59904,1024
  6496.  dc.w 64,0,0,107,2048,0,0,29184
  6497.  dc.w 67,0,0,119,34048,1280,1280,43520
  6498.  dc.w 248,0,0,255,4352,256,256,61952
  6499.  dc.w 142,0,0,766,57600,256,256,64000
  6500.  dc.w 32,0,0,813,1280,256,256,30272
  6501.  dc.w 144,0,0,503,2304,256,256,60544
  6502.  dc.w 80,16,0,497,2560,6656,512,40064
  6503.  dc.w 231,4,0,503,29440,12800,512,31104
  6504.  dc.w 48,0,0,62,3584,3072,3072,21120
  6505.  dc.w 41,0,0,363,36096,35840,35840,25344
  6506.  dc.w 178,0,0,510,49408,49152,49152,7040
  6507.  dc.w 34,0,0,186,25600,25600,25600,6912
  6508.  dc.w 36,0,0,190,1024,1024,1024,53504
  6509.  dc.w 3,0,0,15,34816,2048,2048,45056
  6510.  dc.w 28,0,0,28,51200,51200,51200,4096
  6511.  dc.w 13,0,0,15,36864,4096,4096,49152
  6512.  dc.w 0,0,0,2,8192,8192,8192,49152
  6513.  dc.w 3,0,0,3,32768,0,0,32768
  6514.  dc.w 0,0,0,0,0,0,0,0
  6515.     dc.w    0,0,0,0,0,0,0,0
  6516.     dc.w    0,0,0,0,0,0,0,0
  6517.     dc.w    0,0,0,0,0,0,0,0
  6518.     dc.w    0,0,0,0,0,0,0,0
  6519.     dc.w    0,0,0,0,0,0,0,0
  6520.  
  6521.  
  6522. face1:
  6523.     dc.w    0,0,0,0,0,0,0,0
  6524.     dc.w    0,0,0,0,0,0,0,0
  6525.     dc.w    0,0,0,0,0,0,0,0
  6526.     dc.w    0,0,0,0,0,0,0,0
  6527.     dc.w    0,0,0,0,0,0,0,0
  6528.  
  6529.  dc.w 3,3,3,12,61440,61440,61440,0
  6530.  dc.w 48,0,0,63,1024,1024,1024,63488
  6531.  dc.w 96,0,0,127,64000,59904,59904,1024
  6532.  dc.w 64,0,0,127,3328,1280,1280,61952
  6533.  dc.w 195,0,0,255,50432,1280,1280,64000
  6534.  dc.w 248,0,0,255,7424,1280,1280,64000
  6535.  dc.w 143,0,0,767,57600,256,256,65088
  6536.  dc.w 160,0,0,1007,1280,256,256,63168
  6537.  dc.w 144,0,0,503,2304,256,256,61056
  6538.  dc.w 80,24,0,505,2560,6656,512,40320
  6539.  dc.w 239,12,0,511,63232,46592,34304,31104
  6540.  dc.w 241,0,0,511,36608,35840,35840,29568
  6541.  dc.w 185,0,0,511,36096,35840,35840,29568
  6542.  dc.w 179,0,0,511,50432,50176,50176,15232
  6543.  dc.w 35,0,0,255,25600,25600,25600,39680
  6544.  dc.w 36,0,0,191,1024,1024,1024,63744
  6545.  dc.w 19,0,0,31,51200,2048,2048,61440
  6546.  dc.w 31,3,3,28,59392,51200,51200,12288
  6547.  dc.w 13,0,0,15,36864,4096,4096,57344
  6548.  dc.w 4,0,0,7,8192,8192,8192,49152
  6549.  dc.w 3,0,0,3,49152,0,0,49152
  6550.  dc.w 0,0,0,0,0,0,0,0
  6551.     dc.w    0,0,0,0,0,0,0,0
  6552.     dc.w    0,0,0,0,0,0,0,0
  6553.     dc.w    0,0,0,0,0,0,0,0
  6554.     dc.w    0,0,0,0,0,0,0,0
  6555.     dc.w    0,0,0,0,0,0,0,0
  6556.  
  6557. face2:
  6558.     dc.w    0,0,0,0,0,0,0,0
  6559.     dc.w    0,0,0,0,0,0,0,0
  6560.     dc.w    0,0,0,0,0,0,0,0
  6561.     dc.w    0,0,0,0,0,0,0,0
  6562.     dc.w    0,0,0,0,0,0,0,0
  6563.  dc.w 3,3,3,12,61440,61440,61440,0
  6564.  dc.w 48,0,0,63,1024,1024,1024,63488
  6565.  dc.w 96,0,0,127,64000,59904,59904,1024
  6566.  dc.w 64,0,0,127,3328,1280,1280,61952
  6567.  dc.w 195,0,0,255,58624,1280,1280,64000
  6568.  dc.w 240,0,0,255,7424,1280,1280,64000
  6569.  dc.w 135,0,0,767,57600,256,256,65088
  6570.  dc.w 160,0,0,1007,1280,256,256,63168
  6571.  dc.w 144,0,0,499,2304,256,256,52864
  6572.  dc.w 84,24,0,509,10752,6656,512,48512
  6573.  dc.w 239,12,0,511,63232,46592,34304,31104
  6574.  dc.w 241,0,0,511,36608,35840,35840,29568
  6575.  dc.w 185,0,0,511,36096,35840,35840,29568
  6576.  dc.w 179,0,0,511,50432,50176,50176,15232
  6577.  dc.w 35,0,0,255,25600,25600,25600,39680
  6578.  dc.w 36,0,0,191,1024,1024,1024,63744
  6579.  dc.w 19,0,0,31,51200,2048,2048,61440
  6580.  dc.w 29,1,0,28,43008,34816,2048,12288
  6581.  dc.w 15,3,3,12,53248,53248,53248,8192
  6582.  dc.w 6,0,0,7,8192,8192,8192,49152
  6583.  dc.w 7,0,0,7,0,0,0,57344
  6584.  dc.w 3,0,0,3,49152,0,0,49152
  6585.     dc.w    0,0,0,0,0,0,0,0
  6586.     dc.w    0,0,0,0,0,0,0,0
  6587.     dc.w    0,0,0,0,0,0,0,0
  6588.     dc.w    0,0,0,0,0,0,0,0
  6589.     dc.w    0,0,0,0,0,0,0,0
  6590.  
  6591.  
  6592. face3:
  6593.     dc.w    0,0,0,0,0,0,0,0
  6594.     dc.w    0,0,0,0,0,0,0,0
  6595.     dc.w    0,0,0,0,0,0,0,0
  6596.     dc.w    0,0,0,0,0,0,0,0
  6597.     dc.w    0,0,0,0,0,0,0,0
  6598.  dc.w 3,3,3,12,61440,61440,61440,0
  6599.  dc.w 48,0,0,63,1024,1024,1024,63488
  6600.  dc.w 96,0,0,127,64000,59904,59904,1024
  6601.  dc.w 64,0,0,127,3328,1280,1280,61952
  6602.  dc.w 199,0,0,255,58624,1280,1280,64000
  6603.  dc.w 240,0,0,255,7424,1280,1280,64000
  6604.  dc.w 135,0,0,767,57600,256,256,65088
  6605.  dc.w 160,0,0,1007,1280,256,256,63168
  6606.  dc.w 144,0,0,503,2304,256,256,61056
  6607.  dc.w 80,24,0,505,35328,6656,512,40320
  6608.  dc.w 231,0,0,511,59136,34304,34304,31104
  6609.  dc.w 241,0,0,511,36608,35840,35840,29568
  6610.  dc.w 185,0,0,511,36096,35840,35840,29568
  6611.  dc.w 179,0,0,511,50432,50176,50176,15232
  6612.  dc.w 35,0,0,255,25600,25600,25600,39680
  6613.  dc.w 36,0,0,191,1024,1024,1024,63744
  6614.  dc.w 18,0,0,30,18432,2048,2048,28672
  6615.  dc.w 30,3,0,28,26624,51200,2048,12288
  6616.  dc.w 14,2,2,12,20480,20480,20480,8192
  6617.  dc.w 5,1,1,6,40960,40960,40960,16384
  6618.  dc.w 6,0,0,7,0,0,0,57344
  6619.  dc.w 3,0,0,3,49152,0,0,49152
  6620.     dc.w    0,0,0,0,0,0,0,0
  6621.     dc.w    0,0,0,0,0,0,0,0
  6622.     dc.w    0,0,0,0,0,0,0,0
  6623.     dc.w    0,0,0,0,0,0,0,0
  6624.     dc.w    0,0,0,0,0,0,0,0
  6625.  
  6626.  
  6627. face4:
  6628.     dc.w    0,0,0,0,0,0,0,0
  6629.     dc.w    0,0,0,0,0,0,0,0
  6630.     dc.w    0,0,0,0,0,0,0,0
  6631.     dc.w    0,0,0,0,0,0,0,0
  6632.     dc.w    0,0,0,0,0,0,0,0
  6633.  dc.w 3,3,3,12,61440,61440,61440,0
  6634.  dc.w 48,0,0,63,1024,1024,1024,63488
  6635.  dc.w 96,0,0,127,64000,59904,59904,1024
  6636.  dc.w 64,0,0,127,3328,1280,1280,61952
  6637.  dc.w 195,0,0,255,50432,1280,1280,64000
  6638.  dc.w 248,0,0,255,7424,1280,1280,64000
  6639.  dc.w 131,0,0,767,57600,256,256,65088
  6640.  dc.w 160,0,0,1007,1280,256,256,63168
  6641.  dc.w 144,0,0,497,2304,256,256,36480
  6642.  dc.w 86,24,0,511,27136,6656,512,64896
  6643.  dc.w 239,12,0,511,46848,46592,34304,31104
  6644.  dc.w 241,0,0,511,36608,35840,35840,29568
  6645.  dc.w 185,0,0,511,36096,35840,35840,29568
  6646.  dc.w 179,0,0,511,50432,50176,50176,15232
  6647.  dc.w 35,0,0,255,25600,25600,25600,39680
  6648.  dc.w 36,0,0,191,1024,1024,1024,63744
  6649.  dc.w 19,0,0,31,34816,2048,2048,61440
  6650.  dc.w 29,1,0,28,43008,34816,2048,12288
  6651.  dc.w 15,3,3,12,53248,53248,53248,8192
  6652.  dc.w 6,0,0,7,8192,8192,8192,49152
  6653.  dc.w 7,0,0,7,0,0,0,57344
  6654.  dc.w 3,0,0,3,49152,0,0,49152
  6655.     dc.w    0,0,0,0,0,0,0,0
  6656.     dc.w    0,0,0,0,0,0,0,0
  6657.     dc.w    0,0,0,0,0,0,0,0
  6658.     dc.w    0,0,0,0,0,0,0,0
  6659.     dc.w    0,0,0,0,0,0,0,0
  6660.  
  6661.  
  6662.  
  6663. telea1:
  6664.  dc.w 0,43690,43690,0,2,43691,43688,0
  6665.  dc.w 0,32432,0,32432,3,2,0,0
  6666.  dc.w 0,43690,43690,0,3,43690,43688,0
  6667.  dc.w 0,28288,0,28288,3,2,0,0
  6668.  dc.w 3,43692,43695,7,32771,10922,43688,32768
  6669.  dc.w 8,24591,15,24591,49155,2,16384,16384
  6670.  dc.w 12,43695,43695,15,16387,43690,60072,49152
  6671.  dc.w 7,7,7,7,32771,32770,32768,32768
  6672.  dc.w 24,43704,43704,0,24579,51882,51880,0
  6673.  dc.w 36,32388,4,32440,12291,12290,12288,49152
  6674.  dc.w 32,43648,43648,60,4099,6826,6824,57344
  6675.  dc.w 32,22016,0,22076,36867,4098,4096,57344
  6676.  dc.w 52,43648,43648,60,49155,2730,2728,61440
  6677.  dc.w 24,0,0,24,24579,2,0,24576
  6678.  dc.w 3,43692,43695,7,32771,10922,43688,32768
  6679.  dc.w 8,15,15,15,49155,2,16384,16384
  6680.  dc.w 12,43695,43695,15,16387,43690,60072,49152
  6681.  dc.w 7,7,7,7,32771,32770,32768,32768
  6682.  dc.w 0,43690,43690,0,3,43690,43688,0
  6683.  dc.w 0,0,0,0,3,2,0,0
  6684.  dc.w 0,43690,43690,0,3,43690,43688,0
  6685.  dc.w 0,0,0,0,1,2,0,0
  6686.  
  6687.  
  6688. telea2:
  6689.  dc.w 0,43690,43690,0,2,43691,43688,0
  6690.  dc.w 0,32400,0,32400,3,2,0,0
  6691.  dc.w 0,43690,43690,0,3,43690,43688,0
  6692.  dc.w 0,29952,0,29952,3,2,0,0
  6693.  dc.w 3,43692,43695,7,32771,10922,43688,32768
  6694.  dc.w 9,32270,14,32270,16387,32770,49152,49152
  6695.  dc.w 12,43695,43695,15,16387,43690,60072,49152
  6696.  dc.w 7,7,7,7,32771,32770,32768,32768
  6697.  dc.w 14,43680,43680,14,49155,43690,43688,0
  6698.  dc.w 17,32384,0,32413,24579,24578,24576,32768
  6699.  dc.w 25,43680,43680,29,8195,10922,10920,49152
  6700.  dc.w 29,15232,0,15261,3,2,0,57344
  6701.  dc.w 29,43680,43680,29,40963,2730,2728,57344
  6702.  dc.w 14,0,0,14,49155,2,0,49152
  6703.  dc.w 3,43692,43695,7,32771,10922,43688,32768
  6704.  dc.w 9,14,14,14,16387,32770,49152,49152
  6705.  dc.w 12,43695,43695,15,16387,43690,60072,49152
  6706.  dc.w 7,7,7,7,32771,32770,32768,32768
  6707.  dc.w 0,43690,43690,0,3,43690,43688,0
  6708.  dc.w 0,0,0,0,3,2,0,0
  6709.  dc.w 0,43690,43690,0,3,43690,43688,0
  6710.  dc.w 0,0,0,0,1,2,0,0
  6711.  
  6712. telea3:
  6713.  dc.w 0,43690,43690,0,2,43691,43688,0
  6714.  dc.w 0,28576,0,28576,3,2,0,0
  6715.  dc.w 0,43690,43690,0,3,43690,43688,0
  6716.  dc.w 0,24192,0,24192,3,2,0,0
  6717.  dc.w 3,43688,43691,3,3,43690,43688,0
  6718.  dc.w 5,28678,6,28678,32771,2,32768,32768
  6719.  dc.w 6,43695,43695,7,32771,10922,43688,32768
  6720.  dc.w 3,3,3,3,3,2,0,0
  6721.  dc.w 5,43689,43689,4,32771,10922,10920,0
  6722.  dc.w 10,32000,0,32011,49155,49154,49152,0
  6723.  dc.w 10,43680,43680,11,16387,27306,27304,32768
  6724.  dc.w 10,27264,0,27275,3,2,0,49152
  6725.  dc.w 10,43680,43680,11,3,10922,10920,49152
  6726.  dc.w 5,0,0,5,32771,2,0,32768
  6727.  dc.w 3,43688,43691,3,3,43690,43688,0
  6728.  dc.w 5,6,6,6,32771,2,32768,32768
  6729.  dc.w 6,43695,43695,7,32771,10922,43688,32768
  6730.  dc.w 3,3,3,3,3,2,0,0
  6731.  dc.w 0,43690,43690,0,3,43690,43688,0
  6732.  dc.w 0,0,0,0,3,2,0,0
  6733.  dc.w 0,43690,43690,0,3,43690,43688,0
  6734.  dc.w 0,0,0,0,1,2,0,0
  6735.  
  6736.  
  6737. telea4:
  6738.  dc.w 0,43690,43690,0,2,43691,43688,0
  6739.  dc.w 0,29312,0,29312,3,2,0,0
  6740.  dc.w 0,43690,43690,0,3,43690,43688,0
  6741.  dc.w 0,25600,0,25600,3,2,0,0
  6742.  dc.w 3,43688,43691,3,3,43690,43688,0
  6743.  dc.w 5,31878,6,31878,32771,2,32768,32768
  6744.  dc.w 6,43695,43695,7,32771,10922,43688,32768
  6745.  dc.w 3,3,3,3,3,2,0,0
  6746.  dc.w 3,43690,43690,0,3,43690,43688,0
  6747.  dc.w 5,31361,1,31366,32771,32770,32768,0
  6748.  dc.w 4,43688,43688,7,32771,43690,43688,0
  6749.  dc.w 4,32384,0,32391,3,2,0,32768
  6750.  dc.w 4,43688,43688,7,3,10922,10920,32768
  6751.  dc.w 3,0,0,3,3,2,0,0
  6752.  dc.w 3,43688,43691,3,3,10922,10920,0
  6753.  dc.w 5,6,6,6,32771,2,32768,32768
  6754.  dc.w 6,43695,43695,7,32771,10922,43688,32768
  6755.  dc.w 3,3,3,3,3,2,0,0
  6756.  dc.w 0,43690,43690,0,3,43690,43688,0
  6757.  dc.w 0,0,0,0,3,2,0,0
  6758.  dc.w 0,43690,43690,0,3,43690,43688,0
  6759.  dc.w 0,0,0,0,1,2,0,0
  6760.  
  6761.  
  6762. telea5:
  6763.  dc.w 0,43690,43690,0,2,43691,43688,0
  6764.  dc.w 0,31008,0,31008,3,2,0,0
  6765.  dc.w 0,43690,43690,0,3,43690,43688,0
  6766.  dc.w 0,27968,0,27968,3,2,0,0
  6767.  dc.w 3,43688,43691,3,3,43690,43688,0
  6768.  dc.w 6,14597,5,14597,32771,2,32768,32768
  6769.  dc.w 4,43695,43695,7,32771,10922,43688,32768
  6770.  dc.w 3,3,3,3,3,2,0,0
  6771.  dc.w 6,43692,43692,0,3,10922,10920,32768
  6772.  dc.w 11,28675,3,28684,3,2,0,16384
  6773.  dc.w 9,43681,43681,14,3,10922,10920,16384
  6774.  dc.w 8,30272,0,30287,3,2,0,16384
  6775.  dc.w 12,43680,43680,15,3,10922,10920,16384
  6776.  dc.w 6,0,0,6,32771,2,0,32768
  6777.  dc.w 3,43688,43691,3,3,43690,43688,0
  6778.  dc.w 6,5,5,5,32771,2,32768,32768
  6779.  dc.w 6,43695,43695,7,32771,10922,43688,32768
  6780.  dc.w 3,3,3,3,3,2,0,0
  6781.  dc.w 0,43690,43690,0,3,43690,43688,0
  6782.  dc.w 0,0,0,0,3,2,0,0
  6783.  dc.w 0,43690,43690,0,3,43690,43688,0
  6784.  dc.w 0,0,0,0,1,2,0,0
  6785.  
  6786.  
  6787. telea6:
  6788.  dc.w 0,43690,43690,0,2,43691,43688,0
  6789.  dc.w 0,23680,0,23680,3,2,0,0
  6790.  dc.w 0,43690,43690,0,3,43690,43688,0
  6791.  dc.w 0,31424,0,31424,3,2,0,0
  6792.  dc.w 3,43692,43695,7,32771,10922,43688,32768
  6793.  dc.w 8,24591,15,24591,49155,2,16384,16384
  6794.  dc.w 12,43695,43695,15,16387,43690,60072,49152
  6795.  dc.w 7,7,7,7,32771,32770,32768,32768
  6796.  dc.w 12,43688,43688,0,49155,60074,60072,0
  6797.  dc.w 22,28678,6,28696,8195,8194,8192,49152
  6798.  dc.w 18,43682,43682,28,40963,10922,10920,49152
  6799.  dc.w 16,27520,0,27550,32771,2,0,57344
  6800.  dc.w 16,43680,43680,30,57347,2730,2728,57344
  6801.  dc.w 12,0,0,12,49155,2,0,49152
  6802.  dc.w 3,43692,43695,7,32771,10922,43688,32768
  6803.  dc.w 8,15,15,15,49155,2,16384,16384
  6804.  dc.w 12,43695,43695,15,16387,43690,60072,49152
  6805.  dc.w 7,7,7,7,32771,32770,32768,32768
  6806.  dc.w 0,43690,43690,0,3,43690,43688,0
  6807.  dc.w 0,0,0,0,3,2,0,0
  6808.  dc.w 0,43690,43690,0,3,43690,43688,0
  6809.  dc.w 0,0,0,0,1,2,0,0
  6810.  
  6811.  
  6812. unarmed:
  6813.     dc.w    $0777,$F888,$0777,$0777,$73E7,$8C18,$73E7,$73E7
  6814.     dc.w    $E777,$1888,$E777,$E777,$F7E0,$081F,$F7E0,$F7E0
  6815.     dc.w    $0555,$FAAA,$0555,$0555,$D634,$29CB,$D634,$D634
  6816.     dc.w    $35D4,$CA2B,$35D4,$35D4,$1430,$EBCF,$1430,$1430
  6817.     dc.w    $0554,$FAAB,$0554,$0554,$D5D5,$2A2A,$D5D5,$D5D5
  6818.     dc.w    $D495,$2B6A,$D495,$D495,$F5D0,$0A2F,$F5D0,$F5D0
  6819.     dc.w    $0555,$FAAA,$0555,$0555,$5414,$ABEB,$5414,$5414
  6820.     dc.w    $3554,$CAAB,$3554,$3554,$2550,$DAAF,$2550,$2550
  6821.     dc.w    $05D5,$FA2A,$05D5,$05D5,$95D5,$6A2A,$95D5,$95D5
  6822.     dc.w    $75D5,$8A2A,$75D5,$75D5,$F5D0,$0A2F,$F5D0,$F5D0
  6823.     dc.w    $0615,$F9EA,$0615,$0615,$D555,$2AAA,$D555,$D555
  6824.     dc.w    $9554,$6AAB,$9554,$9554,$1430,$EBCF,$1430,$1430
  6825.     dc.w    $03F7,$FC08,$03F7,$03F7,$7777,$8888,$7777,$7777
  6826.     dc.w    $F777,$0888,$F777,$F777,$F7E0,$081F,$F7E0,$F7E0
  6827.  
  6828. armed:    dc.w    $000F,$FFF0,$000F,$000F,$9F9D,$6062,$9F9D,$9F9D
  6829.     dc.w    $DFDF,$2020,$DFDF,$DFDF,$8000,$7FFF,$8000,$8000
  6830.     dc.w    $0018,$FFE7,$0018,$0018,$D0D7,$2F28,$D0D7,$D0D7
  6831.     dc.w    $5050,$AFAF,$5050,$5050,$C000,$3FFF,$C000,$C000
  6832.     dc.w    $0017,$FFE8,$0017,$0017,$5752,$A8AD,$5752,$5752
  6833.     dc.w    $57D7,$A828,$57D7,$57D7,$4000,$BFFF,$4000,$4000
  6834.     dc.w    $0010,$FFEF,$0010,$0010,$50D5,$AF2A,$50D5,$50D5
  6835.     dc.w    $5095,$AF6A,$5095,$5095,$4000,$BFFF,$4000,$4000
  6836.     dc.w    $0017,$FFE8,$0017,$0017,$55D7,$AA28,$55D7,$55D7
  6837.     dc.w    $57D7,$A828,$57D7,$57D7,$4000,$BFFF,$4000,$4000
  6838.     dc.w    $0015,$FFEA,$0015,$0015,$5655,$A9AA,$5655,$5655
  6839.     dc.w    $5050,$AFAF,$5050,$5050,$C000,$3FFF,$C000,$C000
  6840.     dc.w    $001D,$FFE2,$001D,$001D,$DFDD,$2022,$DFDD,$DFDD
  6841.     dc.w    $DFDF,$2020,$DFDF,$DFDF,$8000,$7FFF,$8000,$8000
  6842.  
  6843. bubble:    dc.w    $07E0,$07E0,$07E0,$07E0,$1FF8,$1FF8,$1FF8,$1FF8
  6844.     dc.w    $3D54,$3FFC,$3FFC,$3FFC,$7EAA,$7FDE,$7FFE,$7FFE
  6845.     dc.w    $7D76,$7F8E,$7FDE,$7FDE,$FEAB,$FFDF,$FFFF,$FFFF
  6846.     dc.w    $DF57,$FFFF,$FFFF,$FFFF,$CFAB,$FFFF,$FFFF,$FFFF
  6847.     dc.w    $DFFF,$FFFF,$FFFF,$FFFF,$CFFF,$FFFF,$FFFF,$FFFF
  6848.     dc.w    $D7FB,$FFFF,$FFFF,$FFFF,$6AA6,$7FFE,$7FFE,$7FFE
  6849.     dc.w    $754E,$7FFE,$7FFE,$7FFE,$381C,$3FFC,$3FFC,$3FFC
  6850.     dc.w    $1FF8,$1FF8,$1FF8,$1FF8,$07E0,$07E0,$07E0,$07E0
  6851.  
  6852.  
  6853. pop:
  6854.  dc.w 24840,24840,24840,24840
  6855.  dc.w 62364,37524,62364,62364
  6856.  dc.w 42474,54902,55286,55286
  6857.  dc.w 23484,27268,31676,31676
  6858.  dc.w 4216,6520,6520,6520
  6859.  dc.w 1344,1344,1344,1344
  6860.  dc.w 16660,16668,16668,16668
  6861.  dc.w 41436,57824,57852,57852
  6862.  dc.w 60500,7260,64604,64604
  6863.  dc.w 42736,59120,59120,59120
  6864.  dc.w 19188,19180,19196,19196
  6865.  dc.w 13758,16354,16374,16374
  6866.  dc.w 24538,28086,32766,32766
  6867.  dc.w 60094,40414,57342,57342
  6868.  dc.w 46504,55256,63480,63480
  6869.  dc.w 57976,57976,57976,57976
  6870.  
  6871. teleb1:
  6872.  dc.w 0,43690,43690,0,0,43690,43690,0
  6873.  dc.w 0,0,0,0,0,0,0,0
  6874.  dc.w 2,43688,43690,0,32768,10922,43690,0
  6875.  dc.w 0,0,0,0,0,0,0,0
  6876.  dc.w 8,43680,43690,0,8192,2730,43690,0
  6877.  dc.w 0,0,256,256,0,0,0,0
  6878.  dc.w 288,43904,43690,256,8192,2730,43690,0
  6879.  dc.w 640,896,1088,1984,0,0,0,0
  6880.  dc.w 416,43776,43690,256,2560,170,43690,0
  6881.  dc.w 0,0,256,256,0,0,0,0
  6882.  dc.w 512,43008,43690,0,128,42,43690,0
  6883.  dc.w 0,0,0,0,0,0,0,0
  6884.  dc.w 512,43008,43690,0,512,170,43690,0
  6885.  dc.w 0,0,0,0,0,0,0,0
  6886.  dc.w 160,43520,43690,0,10240,682,43690,0
  6887.  dc.w 0,0,0,0,0,0,60,0
  6888.  dc.w 32,43648,43690,0,8192,2730,43690,0
  6889.  dc.w 0,0,0,0,0,0,498,0
  6890.  dc.w 10,43680,43690,0,16384,43690,60074,0
  6891.  dc.w 0,0,0,0,0,0,54,0
  6892.  dc.w 0,43690,43690,0,0,43690,43690,0
  6893.  dc.w 0,0,0,0,0,0,502,0
  6894.  
  6895.  
  6896. teleb2:
  6897.  dc.w 0,43690,43690,0,0,43690,43690,0
  6898.  dc.w 0,0,0,0,0,0,0,0
  6899.  dc.w 2,43688,43690,0,32768,10922,43690,0
  6900.  dc.w 0,0,0,0,0,0,0,0
  6901.  dc.w 8,43680,43946,256,8192,2730,43690,0
  6902.  dc.w 256,256,0,256,0,0,0,0
  6903.  dc.w 32,43904,43690,256,2048,682,43690,0
  6904.  dc.w 1088,1984,2080,4064,0,0,0,0
  6905.  dc.w 160,43776,43690,256,640,42,43690,0
  6906.  dc.w 256,256,0,256,0,0,0,0
  6907.  dc.w 512,43008,43946,256,32,10,43690,0
  6908.  dc.w 0,0,0,0,0,0,0,0
  6909.  dc.w 512,43008,43690,0,128,42,43690,0
  6910.  dc.w 0,0,0,0,0,0,0,0
  6911.  dc.w 160,43520,43690,0,2560,170,43690,0
  6912.  dc.w 0,0,0,0,0,0,122,0
  6913.  dc.w 32,43648,43690,0,8192,2730,43690,0
  6914.  dc.w 0,0,0,0,0,0,102,0
  6915.  dc.w 10,43680,43690,0,16384,43690,60074,0
  6916.  dc.w 0,0,0,0,0,0,214,0
  6917.  dc.w 0,43690,43690,0,0,43690,43690,0
  6918.  dc.w 0,0,0,0,0,0,458,0
  6919.  
  6920. teleb3:
  6921.  dc.w 2,43688,43690,0,0,43690,43690,0
  6922.  dc.w 0,0,0,0,0,0,0,0
  6923.  dc.w 0,43680,43690,0,32768,10922,43690,0
  6924.  dc.w 0,0,256,256,0,0,0,0
  6925.  dc.w 288,43904,43690,256,8832,2090,43690,0
  6926.  dc.w 0,256,0,256,0,0,0,0
  6927.  dc.w 32,43904,43690,256,2080,10,43690,0
  6928.  dc.w 2336,3808,4112,7920,0,0,0,0
  6929.  dc.w 160,43776,43690,256,32,10,43690,0
  6930.  dc.w 0,256,0,256,0,0,0,0
  6931.  dc.w 768,43264,43690,256,128,42,43690,0
  6932.  dc.w 0,0,256,256,0,0,0,0
  6933.  dc.w 512,43008,43690,0,128,42,43690,0
  6934.  dc.w 0,0,0,0,0,0,0,0
  6935.  dc.w 512,43008,43690,0,512,170,43690,0
  6936.  dc.w 0,0,0,0,0,0,78,0
  6937.  dc.w 512,43008,43690,0,512,170,43690,0
  6938.  dc.w 0,0,0,0,0,0,14,0
  6939.  dc.w 170,43520,43690,0,33280,170,43690,0
  6940.  dc.w 0,0,0,0,0,0,2,0
  6941.  dc.w 0,43690,43690,0,10240,33450,43690,0
  6942.  dc.w 0,0,0,0,0,0,190,0
  6943.  
  6944.  
  6945. teleb4:
  6946.  dc.w 0,43690,43690,0,0,43690,43690,0
  6947.  dc.w 0,0,0,0,0,0,0,0
  6948.  dc.w 682,43008,43690,0,43520,170,43690,0
  6949.  dc.w 0,0,0,0,0,0,0,0
  6950.  dc.w 512,43008,43946,256,128,42,43690,0
  6951.  dc.w 256,256,0,256,0,0,0,0
  6952.  dc.w 512,43264,43690,256,128,42,43690,0
  6953.  dc.w 1088,1984,2080,4064,0,0,0,0
  6954.  dc.w 512,43264,43690,256,128,42,43690,0
  6955.  dc.w 256,256,0,256,0,0,0,0
  6956.  dc.w 512,43008,43946,256,128,42,43690,0
  6957.  dc.w 0,0,0,0,0,0,0,0
  6958.  dc.w 512,43008,43690,0,128,42,43690,0
  6959.  dc.w 0,0,0,0,0,0,0,0
  6960.  dc.w 128,43520,43690,0,128,42,43690,0
  6961.  dc.w 0,0,0,0,0,0,22,0
  6962.  dc.w 128,43520,43690,0,8320,42,43690,0
  6963.  dc.w 0,0,0,0,0,0,14,0
  6964.  dc.w 42,43648,43690,0,43648,42,43690,0
  6965.  dc.w 0,0,0,0,0,0,122,0
  6966.  dc.w 0,43690,43690,0,0,43690,43690,0
  6967.  dc.w 0,0,0,0,0,0,2,0
  6968.  
  6969. teleb5:
  6970.  dc.w 0,43690,43690,0,0,43690,43690,0
  6971.  dc.w 0,0,0,0,0,0,0,0
  6972.  dc.w 34,43656,43690,0,43008,682,43690,0
  6973.  dc.w 0,0,0,0,0,0,0,0
  6974.  dc.w 138,43520,43690,0,512,170,43690,0
  6975.  dc.w 0,0,256,256,0,0,0,0
  6976.  dc.w 768,43264,43690,256,128,42,43690,0
  6977.  dc.w 640,896,1088,1984,0,0,0,0
  6978.  dc.w 768,43264,43690,256,128,42,43690,0
  6979.  dc.w 0,0,256,256,0,0,0,0
  6980.  dc.w 2048,40960,43690,0,160,10,43690,0
  6981.  dc.w 0,0,0,0,0,0,0,0
  6982.  dc.w 640,43008,43690,0,128,42,43690,0
  6983.  dc.w 0,0,0,0,0,0,0,0
  6984.  dc.w 128,43520,43690,0,128,42,43690,0
  6985.  dc.w 0,0,0,0,0,0,30,0
  6986.  dc.w 128,43520,43690,0,512,42,43562,0
  6987.  dc.w 0,0,0,0,0,0,6,0
  6988.  dc.w 42,43648,43690,0,10240,682,43690,0
  6989.  dc.w 0,0,0,0,0,0,382,0
  6990.  dc.w 0,43690,43690,0,32768,10922,43690,0
  6991.  dc.w 0,0,0,0,0,0,126,0
  6992.  
  6993.  
  6994. block1:    dc.b    $7F,$80,$FF,$FF,$81,$FE,$FF,$FF
  6995.     dc.b    $81,$FE,$FF,$FF,$81,$FE,$FF,$FF
  6996.     dc.b    $81,$FE,$FF,$FF,$81,$FE,$FF,$FF
  6997.     dc.b    $81,$FE,$FF,$FF,$FE,$FF,$FF,$FF
  6998.  
  6999. block2:    dc.b    $26,$E7,$18,$FF,$D9,$FF,$00,$FF
  7000.     dc.b    $2A,$3E,$C1,$FF,$AD,$BD,$42,$FF
  7001.     dc.b    $AB,$BB,$44,$FF,$5C,$7C,$83,$FF
  7002.     dc.b    $A3,$FF,$00,$FF,$5C,$DF,$20,$FF
  7003.  
  7004. block3:    dc.b    $00,$FF,$00,$FF,$81,$FF,$00,$FF
  7005.     dc.b    $C3,$FF,$00,$FF,$E7,$FF,$00,$FF
  7006.     dc.b    $E7,$E7,$18,$FF,$C3,$C3,$3C,$FF
  7007.     dc.b    $81,$81,$7E,$FF,$00,$00,$FF,$FF
  7008.  
  7009. block4:    dc.b    $42,$7E,$FF,$FF,$BD,$C3,$FF,$FF
  7010.     dc.b    $66,$99,$FF,$FF,$5A,$BD,$FF,$FF
  7011.     dc.b    $5A,$BD,$FF,$FF,$66,$99,$FF,$FF
  7012.     dc.b    $BD,$C3,$FF,$FF,$42,$7E,$FF,$FF
  7013.  
  7014. block5:    dc.b    $E3,$FF,$00,$FF,$81,$9F,$60,$FF
  7015.     dc.b    $3C,$3F,$C0,$FF,$3C,$3F,$C0,$FF
  7016.     dc.b    $3C,$3F,$C0,$FF,$3C,$3F,$C0,$FF
  7017.     dc.b    $81,$87,$78,$FF,$C3,$C3,$3C,$FF
  7018.  
  7019. block6:    dc.b    $7F,$7F,$7F,$80,$89,$09,$09,$F6
  7020.     dc.b    $91,$11,$11,$EE,$A1,$21,$21,$DE
  7021.     dc.b    $C3,$43,$43,$BC,$07,$07,$07,$F8
  7022.     dc.b    $8D,$0D,$0D,$F2,$E6,$00,$00,$FF
  7023.  
  7024. block7:    dc.b    $5B,$7F,$5B,$A4,$A5,$25,$01,$FE
  7025.     dc.b    $A5,$25,$01,$FE,$7D,$7D,$81,$FE
  7026.     dc.b    $A1,$21,$01,$FE,$A6,$27,$00,$FF
  7027.     dc.b    $A5,$25,$01,$FE,$DA,$00,$24,$FF
  7028.  
  7029. block8:    dc.b    $FF,$00,$FF,$FF,$7E,$81,$FF,$FF
  7030.     dc.b    $3C,$C3,$FF,$FF,$18,$E7,$FF,$FF
  7031.     dc.b    $18,$FF,$FF,$FF,$3C,$FF,$FF,$FF
  7032.     dc.b    $7E,$FF,$FF,$FF,$FF,$FF,$FF,$FF
  7033.  
  7034. block9:    dc.b    $80,$FF,$00,$FF,$7E,$43,$80,$FF
  7035.     dc.b    $56,$11,$90,$EB,$62,$21,$A0,$DF
  7036.     dc.b    $72,$31,$B0,$CF,$5A,$19,$98,$E7
  7037.     dc.b    $3E,$03,$C0,$FF,$01,$01,$FE,$FF
  7038.  
  7039. block10:
  7040.     dc.b    $E9,$ED,$F3,$FF,$FF,$FF,$FF,$FF
  7041.     dc.b    $FF,$00,$FF,$FF,$00,$FF,$FF,$FF
  7042.     dc.b    $FF,$FF,$FF,$FF,$E5,$E5,$FB,$FF
  7043.     dc.b    $E9,$ED,$F3,$FF,$E9,$ED,$F3,$FF
  7044.  
  7045. block11:
  7046.     dc.b    $7F,$67,$7F,$98,$81,$19,$19,$FE
  7047.     dc.b    $81,$19,$19,$FE,$81,$FE,$FF,$FF
  7048.     dc.b    $81,$FE,$FF,$FF,$81,$19,$19,$FE
  7049.     dc.b    $81,$19,$19,$FE,$FE,$18,$18,$FF
  7050.  
  7051. block12:
  7052.     dc.b    $80,$80,$7F,$FF,$7E,$FE,$01,$FF
  7053.     dc.b    $62,$E2,$1D,$FF,$5A,$FA,$05,$FF
  7054.     dc.b    $5A,$FA,$05,$FF,$46,$FE,$01,$FF
  7055.     dc.b    $7E,$FE,$01,$FF,$01,$FF,$00,$FF
  7056.  
  7057. block13:
  7058.     dc.b    $84,$FF,$04,$FB,$7A,$7B,$80,$FF
  7059.     dc.b    $89,$09,$01,$FE,$6E,$6F,$80,$FF
  7060.     dc.b    $6E,$6F,$80,$FF,$A9,$29,$01,$FE
  7061.     dc.b    $6A,$6B,$80,$FF,$15,$01,$EA,$FF
  7062.  
  7063. block14:
  7064.     dc.b    $7F,$7F,$7F,$80,$81,$01,$01,$FE
  7065.     dc.b    $9D,$1D,$1D,$E2,$A5,$05,$05,$FA
  7066.     dc.b    $A5,$05,$05,$FA,$B9,$01,$01,$FE
  7067.     dc.b    $81,$01,$01,$FE,$FE,$00,$00,$FF
  7068.  
  7069. block15:
  7070.     dc.b    $80,$FF,$00,$FF,$7E,$7F,$BC,$FF
  7071.     dc.b    $56,$6B,$FA,$FB,$62,$5F,$FE,$FF
  7072.     dc.b    $72,$4F,$FE,$FF,$5A,$67,$FE,$FF
  7073.     dc.b    $3E,$3F,$FC,$FF,$01,$01,$FE,$FF
  7074.  
  7075. block16:
  7076.     dc.b    $49,$60,$96,$FF,$9A,$C2,$25,$FF
  7077.     dc.b    $95,$C4,$2A,$FF,$82,$C0,$3D,$FF
  7078.     dc.b    $40,$F9,$06,$FF,$B9,$BF,$40,$FF
  7079.     dc.b    $56,$1E,$A1,$FF,$E9,$38,$06,$FF
  7080.  
  7081. block17:
  7082.     dc.b    $03,$3C,$00,$FF,$7D,$7E,$00,$FF
  7083.     dc.b    $7E,$7F,$80,$FF,$7E,$7F,$80,$FF
  7084.     dc.b    $7E,$7F,$80,$FF,$7E,$7F,$80,$FF
  7085.     dc.b    $BE,$BE,$C0,$7F,$C0,$C0,$FC,$3F
  7086.  
  7087. block18:
  7088.     dc.b    $17,$10,$08,$FF,$33,$30,$0C,$FF
  7089.     dc.b    $71,$70,$0E,$FF,$70,$70,$8F,$FF
  7090.     dc.b    $0F,$FF,$00,$FF,$8E,$FE,$80,$7F
  7091.     dc.b    $CC,$FC,$C0,$3F,$E0,$F0,$E8,$1F
  7092.  
  7093. ə